CF1701B.Permutation
入门
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Recall that a permutation of length n is an array where each element from 1 to n occurs exactly once.
For a fixed positive integer d, let's define the cost of the permutation p of length n as the number of indices i (1≤i<n) such that pi⋅d=pi+1.
For example, if d=3 and p=[5,2,6,7,1,3,4], then the cost of such a permutation is 2, because p2⋅3=p3 and p5⋅3=p6.
Your task is the following one: for a given value n, find the permutation of length n and the value d with maximum possible cost (over all ways to choose the permutation and d). If there are multiple answers, then print any of them.
回忆一下,长度为 n 的排列是指一个数组,其中从 1 到 n 的每个整数恰好出现一次。
对于一个固定的正整数 d,定义长度为 n 的排列 p 的代价为满足 pi⋅d=pi+1 的下标 i 的个数(其中 1≤i<n)。
例如,若 d=3 且 p=[5,2,6,7,1,3,4],则该排列的代价为 2,因为 p2⋅3=p3 且 p5⋅3=p6。
你的任务是:对给定的 n,找出一个长度为 n 的排列 p 和一个正整数 d,使得其代价在所有可能的排列与 d 的选择中达到最大。如果存在多个最优解,输出任意一个即可。
输入格式
The first line contains a single integer t (1≤t≤500) — the number of test cases.
The single line of each test case contains a single integer n (2≤n≤2⋅105).
The sum of n over all test cases does not exceed 2⋅105.
第一行包含一个整数 t(1≤t≤500)—— 表示测试用例的数量。
每个测试用例的唯一一行包含一个整数 n(2≤n≤2⋅105)。
所有测试用例的 n 值之和不超过 2⋅105。
输出格式
For each test case, print the value d in the first line, and n integers in the second line — the permutation itself. If there are multiple answers, then print any of them.
对于每个测试用例,在第一行输出值 d,在第二行输出 n 个整数——即该排列本身。若存在多个答案,输出任意一个即可。
输入输出样例
输入#1
2 2 3
输出#1
2 1 2 3 2 1 3
输入解题思路,AI测评打分。不知道怎么写?