首页 > 代码库 > Harmonic Value Description

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

 

 

 

Harmonic Value Description