Need to improve the skill of the ability of string processing.
// 1042. Shuffling Machine.cpp: 主项目文件。 #include "stdafx.h" #include <cstdio> #include <cstring> const int N=55; char oriStr[N][4]={" ","S1","S2","S3","S4","S5","S6","S7","S8","S9","S10","S11","S12","S13", "H1","H2","H3","H4","H5","H6","H7","H8","H9","H10","H11","H12","H13", "C1","C2","C3","C4","C5","C6","C7","C8","C9","C10","C11","C12","C13", "D1","D2","D3","D4","D5","D6","D7","D8","D9","D10","D11","D12","D13", "J1","J2"}; char tStr[N][4]; int arr[N]; void shuffle(char str1[][4],char str2[][4]){ for(int i=1;i<N;i++){ strcpy(str2[arr[i]],str1[i]); } } void print(char str[][4]){ for(int i=1;i<N;i++){ if(i!=1) printf(" "); printf("%s",str[i]); } printf("\n"); } int main() { int k; scanf("%d",&k); for(int i=1;i<N;i++) scanf("%d",arr+i); bool tag=true; while(k--){ if(tag) shuffle(oriStr,tStr); else shuffle(tStr,oriStr); tag=!tag; } if(tag) print(oriStr); else print(tStr); return 0; }