注意点:数组位置=次序-1.
#include <iostream>
int main(){
int repeat,order[54],seq[54],temp[54];
scanf("%d",&repeat);
for(int i=0;i<54;i++){
scanf("%d",&order[i]);
seq[i]=i;
}
for(int i=0;i<repeat;i++){
for(int j=0;j<54;j++){
temp[order[j]-1]=seq[j]; //-1
}
for(int j=0;j<54;j++)
seq[j]=temp[j];
}
char str[]="SHCDJ";
printf("%c%d",str[seq[0]/13],(seq[0]%13)+1);
for(int i=1;i<54;i++)
printf(" %c%d",str[seq[i]/13],(seq[i]%13)+1);
return 0;
}