Harmonic Value Description(构造题)

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)

Total Submission(s): 786    Accepted Submission(s): 456
Special Judge


Problem Description

The harmonic value of the permutation p1,p2,pn is

i=1n1gcd(pi.pi+1)


Mr. Frog is wondering about the permutation whose harmonic value is the strictly k-th smallest among all the permutations of [n].

 

 

Input

The first line contains only one integer T (1T100), which indicates the number of test cases.

For each test case, there is only one line describing the given integers n and k (12kn10000).

 

 

Output

For each test case, output one line “Case #x: p1 p2  pn”, where x is the case number (starting from 1) and p1 p2  pn is the answer.

 

 

Sample Input

2
4 1
4 2

 

 

Sample Output

Case #1: 4 1 3 2

Case #2: 2 4 1 3

 

 

//题目看上去比较复杂,其实就需要一点点思维,问 1-n n个数,第 k 小的harmonic value的排列是怎样的

题解: 要第 k 大就把前 k 个偶数丢前面去,剩下的不变就好了

 

 1 #include <iostream>
 2 #include <stdio.h>
 3 #include <string.h>
 4 using namespace std;
 5 
 6 int main()
 7 {
 8     int T;
 9     cin>>T;
10     for (int cnt=1;cnt<=T;cnt++)
11     {
12         int n ,k;
13         scanf("%d%d",&n,&k);
14         printf("Case #%d:",cnt);
15         for (int i=1;i<=k;i++)
16             printf(" %d",i*2);
17         for (int i=1;i<=n;i++)
18         {
19             if (i%2==0&&i<=2*k) continue;
20             printf(" %d",i);
21         }
22         printf("\n");
23     }
24     return 0;
25 }
View Code

 

 

 

posted @ 2017-05-11 19:34  happy_codes  阅读(247)  评论(0编辑  收藏  举报