CF1758C.Almost All Multiples
普及/提高-
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Given two integers n and x, a permutation† p of length n is called funny if pi is a multiple of i for all 1≤i≤n−1, pn=1, and p1=x.
Find the lexicographically minimal‡ funny permutation, or report that no such permutation exists.
† A permutation of length n is an array consisting of each of the integers from 1 to n exactly once.
‡ Let a and b be permutations of length n. Then a is lexicographically smaller than b if in the first position i where a and b differ, ai<bi. A permutation is lexicographically minimal if it is lexicographically smaller than all other permutations.
给定两个整数 n 和 x,一个长度为 n 的排列† p 被称为有趣的,当且仅当满足以下条件:对所有 1≤i≤n−1,pi 是 i 的倍数;pn=1;且 p1=x。
请找出字典序最小的‡ 有趣排列;若不存在这样的排列,则报告无解。
† 长度为 n 的排列是指由 1 到 n 中每个整数恰好出现一次所构成的数组。
‡ 设 a 和 b 均为长度为 n 的排列。若在 a 与 b 首次不同的位置 i 上有 ai<bi,则称 a 的字典序小于 b。字典序最小的排列是指其字典序严格小于所有其他(可行)排列的排列。
输入格式
The input consists of multiple test cases. The first line contains an integer t (1≤t≤104) — the number of test cases. The description of the test cases follows.
The only line of each test case contains two integers n and x (2≤n≤2⋅105; 1<x≤n).
The sum of n across all test cases does not exceed 2⋅105.
输入包含多个测试用例。第一行包含一个整数 t(1≤t≤104),表示测试用例的数量。随后是各测试用例的描述。
每个测试用例仅有一行,包含两个整数 n 和 x(2≤n≤2⋅105;1<x≤n)。
所有测试用例中 n 的总和不超过 2⋅105。
输出格式
For each test case, if the answer exists, output n distinct integers p1,p2,…,pn (1≤pi≤n) — the lexicographically minimal funny permutation p. Otherwise, output −1.
对于每个测试用例,如果答案存在,则输出 n 个互不相同的整数 p1,p2,…,pn(其中 1≤pi≤n)——即字典序最小的“有趣排列” p;否则,输出 −1。
输入输出样例
输入#1
3 3 3 4 2 5 4
输出#1
3 2 1 2 4 3 1 -1
说明/提示
In the first test case, the permutation [3,2,1] satisfies all the conditions: p1=3, p3=1, and:
- p1=3 is a multiple of 1.
- p2=2 is a multiple of 2.
In the second test case, the permutation [2,4,3,1] satisfies all the conditions: p1=2, p4=1, and:
- p1=2 is a multiple of 1.
- p2=4 is a multiple of 2.
- p3=3 is a multiple of 3.
We can show that these permutations are lexicographically minimal.
No such permutations exist in the third test case.
在第一个测试用例中,排列 [3,2,1] 满足所有条件:p1=3,p3=1,且:
- p1=3 是 1 的倍数。
- p2=2 是 2 的倍数。
在第二个测试用例中,排列 [2,4,3,1] 满足所有条件:p1=2,p4=1,且:
- p1=2 是 1 的倍数。
- p2=4 是 2 的倍数。
- p3=3 是 3 的倍数。
我们可以证明这些排列是字典序最小的。
在第三个测试用例中,不存在满足条件的排列。
输入解题思路,AI测评打分。不知道怎么写?