1. 程式人生 > >1042 Shuffling Machine (20 分)

1042 Shuffling Machine (20 分)

題目地址:1042 Shuffling Machine (20 分)

模擬題,定義一個新的字串陣列作為中間產物臨時存放卡牌。每執行一次,中間陣列更新一次,然後在複製到卡牌陣列中。

程式碼

#include <bits/stdc++.h>
using namespace std;
string a[] = {"0","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" }; string s[55]; int main() { //freopen("datain.txt","r",stdin); int n; scanf("%d", &n); int next[55];//臨時陣列 next[0] =
0; for (int i = 1; i < 55; i++ ) { scanf("%d", &next[i]); } while (n--) { for (int i = 1; i < 55; i++) { s[next[i]] = a[i]; } for (int i = 1; i < 55; i++) { a[i] = s[i]; } } cout<<a[1]; for (int i = 2; i < 55; i++) { cout<<" "<<a[i]; } cout<<
endl; return 0; }