PAT甲1042 简单模拟

题目链接

代码:

#include<iostream>
#include<string.h>
#include<stdio.h>
using namespace std;
const int N = 54;
int current[N];
int next[N];
int trans[N];
char t[5]={'S','H','C','D','J'};
int main()
{
	int k;
	cin>>k;
	for(int i=1;i<=N;i++)
	{
		cin>>trans[i];
	}
	for(int i=1;i<=N;i++)
		current[i]=i;
	while(k--)
	{
		for(int i=1;i<=N;i++)
			next[trans[i]]=current[i];
		for(int i=1;i<=N;i++)
			current[i]=next[i];
	}
	printf("%c%d",t[(current[1]-1)/13],(current[1]-1)%13+1);
	for(int i=2;i<=N;i++)
	{
		printf(" %c%d",t[(current[i]-1)/13],(current[i]-1)%13+1);
	}
	return 0;
}
posted @ 2022-05-11 21:01  爱xiaoyi  阅读(24)  评论(0)    收藏  举报