/*
小明刚上小学,学会了第一个扑克牌“魔术”,到处给人表演。魔术的内容是这样的:
他手里握着一叠扑克牌:A,2,....J,Q,K 一共13张。他先自己精心设计它们的顺序,然后正面朝下拿着,开始表演。
只见他先从最下面拿一张放到最上面,再从最下面拿一张翻开放桌子上,是A;然后再从最下面拿一张放到最上面,再从最下面拿一张翻开放桌子上,是2;
......如此循环直到手中只有一张牌,翻开放桌子上,刚好是K。
这时,桌上牌的顺序是:A,2,3,4,5,6,7,8,9,10,J,Q,K
请你计算一下,小明最开始的时候手里牌的顺序是怎样的。
把结果写出来,逗号分割,小明“魔术”开始时,最下面的那张牌输出为第一个数据。
*/
#include"stdio.h"
#include"string.h"
int main()
{
int i,index,temp;
int a[13];
memset(a,0,sizeof(a)); //初始化数组为 0
for(i=1,index=1;i<14;i++){
while(1){
if(a[index]==0){
a[index]=i;break;
}else index++;
}
temp=0;
while(1){
index++;
index=index%13;
if(a[index]==0) temp++;
if(temp==2 || i==13) break;
}
}
for(i=0;i<13;i++)
{ if(a[i]<=10) printf("%d ",a[i]);
else if(a[i]==11) printf("J ");
else if(a[i]==12) printf("Q ");
else printf("K ");
}
printf("\n");
return 0;
}