描述html
The magician shuffles a small pack of cards, holds it face down and performs the following procedure:spa
This impressive trick works if the magician knows how to arrange the cards beforehand (and knows how to give a false shuffle). Your program has to determine the initial order of the cards for a given number of cards, 1 ≤ n ≤ 13.code
輸入orm
On the first line of the input is a single positive integer k, telling the number of test cases to follow. 1 ≤ k ≤ 10 Each case consists of one line containing the integer n. 1 ≤ n ≤ 13htm
輸出ci
For each test case, output a line with the correct permutation of the values 1 to n, space separated. The first number showing the top card of the pack, etc…input
樣例輸入it
2 4 5
樣例輸出io
2 1 4 3 3 1 4 5 2
題意:table
從牌頂取出1張牌,放在牌底,取出牌頂,爲1;
從牌頂取出2張牌,放在牌底,取出牌頂,爲2;
從牌頂取出3張牌,放在牌底,取出牌頂,爲3;
問有n張牌想要達到目的牌最初須要怎樣排列?
#include<stdio.h> #define N 1020 int a[N]; int main() { int T,i,n,m,k,h,t; scanf("%d",&T); while(T--) { scanf("%d",&n); h=0;t=0; a[t]=a[h]=n; k=n-1; while(k) { h++; m=k; a[h]=m; while(m--) { h++; a[h]=a[t]; t++; } k--; } for(i=h;i>=t;i--) printf("%d ",a[i]); printf("\n"); } return 0; }