#include <stdio.h>
#include <string.h>
#define CARDNUM 52
char Values[13][10] = {
"2","3","4","5","6","7","8","9","10","Jack","Queen","King","Ace"
};
char Suits[4][10] = {"Clubs","Diamonds","Hearts","Spades"};
void display(int card)
{
printf("%s of %s\n", Values[(card-1)%13],Suits[(card-1)/13]);
}
void shuffle(int cards[CARDNUM], int shuffle[CARDNUM])
{
int temp[CARDNUM];
int i;
for(i=0; i<CARDNUM; i++)
temp[i] = cards[i];
for(i=0; i<CARDNUM; i++)
cards[i] = temp[shuffle[i]-1];
}
int main()
{
int cards[CARDNUM];
int shuffles[100][CARDNUM];
int apply;
int cases, num, i, j;
char temp[10];
scanf("%d",&cases);
while(cases--)
{
for(i=0; i<CARDNUM; i++)
cards[i] = i+1;
scanf("%d",&num);
for(i=0; i<num; i++)
for(j=0; j<CARDNUM; j++)
scanf("%d",&shuffles[i][j]);
getchar();
while(gets(temp)!=NULL && temp[0]!='\0')
{
sscanf(temp,"%d",&apply);
shuffle(cards,shuffles[apply-1]);
}
for(i=0; i<CARDNUM; i++)
display(cards[i]);
if(cases) printf("\n");
}
return 0;
}
UVa 10205 Stack 'em Up
最新推荐文章于 2024-06-20 06:15:00 发布