CF1279E.New Year Permutations

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Yeah, we failed to make up a New Year legend for this problem.

A permutation of length nn is an array of nn integers such that every integer from 11 to nn appears in it exactly once.

An element yy of permutation pp is reachable from element xx if x=yx = y , or px=yp_x = y , or ppx=yp_{p_x} = y , and so on.

The decomposition of a permutation pp is defined as follows: firstly, we have a permutation pp , all elements of which are not marked, and an empty list ll . Then we do the following: while there is at least one not marked element in pp , we find the leftmost such element, list all elements that are reachable from it in the order they appear in pp , mark all of these elements, then cyclically shift the list of those elements so that the maximum appears at the first position, and add this list as an element of ll . After all elements are marked, ll is the result of this decomposition.

For example, if we want to build a decomposition of p=[5,4,2,3,1,7,8,6]p = [5, 4, 2, 3, 1, 7, 8, 6] , we do the following:

  1. initially p=[5,4,2,3,1,7,8,6]p = [5, 4, 2, 3, 1, 7, 8, 6] (bold elements are marked), l=[]l = [] ;
  2. the leftmost unmarked element is 55 ; 55 and 11 are reachable from it, so the list we want to shift is [5,1][5, 1] ; there is no need to shift it, since maximum is already the first element;
  3. p=[5,4,2,3,1,7,8,6]p = [\textbf{5}, 4, 2, 3, \textbf{1}, 7, 8, 6] , l=[[5,1]]l = [[5, 1]] ;
  4. the leftmost unmarked element is 44 , the list of reachable elements is [4,2,3][4, 2, 3] ; the maximum is already the first element, so there's no need to shift it;
  5. p=[5,4,2,3,1,7,8,6]p = [\textbf{5}, \textbf{4}, \textbf{2}, \textbf{3}, \textbf{1}, 7, 8, 6] , l=[[5,1],[4,2,3]]l = [[5, 1], [4, 2, 3]] ;
  6. the leftmost unmarked element is 77 , the list of reachable elements is [7,8,6][7, 8, 6] ; we have to shift it, so it becomes [8,6,7][8, 6, 7] ;
  7. p=[5,4,2,3,1,7,8,6]p = [\textbf{5}, \textbf{4}, \textbf{2}, \textbf{3}, \textbf{1}, \textbf{7}, \textbf{8}, \textbf{6}] , l=[[5,1],[4,2,3],[8,6,7]]l = [[5, 1], [4, 2, 3], [8, 6, 7]] ;
  8. all elements are marked, so [[5,1],[4,2,3],[8,6,7]][[5, 1], [4, 2, 3], [8, 6, 7]] is the result.

The New Year transformation of a permutation is defined as follows: we build the decomposition of this permutation; then we sort all lists in decomposition in ascending order of the first elements (we don't swap the elements in these lists, only the lists themselves); then we concatenate the lists into one list which becomes a new permutation. For example, the New Year transformation of p=[5,4,2,3,1,7,8,6]p = [5, 4, 2, 3, 1, 7, 8, 6] is built as follows:

  1. the decomposition is [[5,1],[4,2,3],[8,6,7]][[5, 1], [4, 2, 3], [8, 6, 7]] ;
  2. after sorting the decomposition, it becomes [[4,2,3],[5,1],[8,6,7]][[4, 2, 3], [5, 1], [8, 6, 7]] ;
  3. [4,2,3,5,1,8,6,7][4, 2, 3, 5, 1, 8, 6, 7] is the result of the transformation.

We call a permutation good if the result of its transformation is the same as the permutation itself. For example, [4,3,1,2,8,5,6,7][4, 3, 1, 2, 8, 5, 6, 7] is a good permutation; and [5,4,2,3,1,7,8,6][5, 4, 2, 3, 1, 7, 8, 6] is bad, since the result of transformation is [4,2,3,5,1,8,6,7][4, 2, 3, 5, 1, 8, 6, 7] .

Your task is the following: given nn and kk , find the kk -th (lexicographically) good permutation of length nn .

输入格式

The first line contains one integer tt ( 1t10001 \le t \le 1000 ) — the number of test cases.

Then the test cases follow. Each test case is represented by one line containing two integers nn and kk ( 1n501 \le n \le 50 , 1k10181 \le k \le 10^{18} ).

输出格式

For each test case, print the answer to it as follows: if the number of good permutations of length nn is less than kk , print one integer 1-1 ; otherwise, print the kk -th good permutation on nn elements (in lexicographical order).

输入输出样例

  • 输入#1

    5
    3 3
    5 15
    4 13
    6 8
    4 2
    

    输出#1

    2 1 3 
    3 1 2 5 4 
    -1
    1 2 6 3 4 5 
    1 2 4 3 
    
首页