码迷,mamicode.com
首页 > 系统相关 > 详细

PAT (Advanced Level) 1042. Shuffling Machine (20)

时间:2016-05-25 14:59:21      阅读:192      评论:0      收藏:0      [点我收藏+]

标签:

简单题。

#include<cstdio>
#include<cstring>
#include<cmath>
#include<vector>
#include<map>
#include<queue>
#include<stack>
#include<string>
#include<algorithm>
using namespace std;

struct X
{
    char c;
    int num;
}s[60];

int ans[60],p[60],tmp[60];
int n;

void init()
{
    for(int i=1;i<=13;i++) s[i].c=S,s[i].num=i;
    for(int i=14;i<=26;i++) s[i].c=H,s[i].num=i-13;
    for(int i=27;i<=39;i++) s[i].c=C,s[i].num=i-26;
    for(int i=40;i<=52;i++) s[i].c=D,s[i].num=i-39;
    s[53].c=J; s[53].num=1;
    s[54].c=J; s[54].num=2;
}

int main()
{
    init();
    for(int i=1;i<=54;i++) ans[i]=i;

    int k; scanf("%d",&k);
    for(int i=1;i<=54;i++) scanf("%d",&p[i]);

    for(int i=1;i<=k;i++)
    {
        for(int j=1;j<=54;j++) tmp[p[j]]=ans[j];
        for(int j=1;j<=54;j++) ans[j]=tmp[j];
    }

    for(int i=1;i<=54;i++)
    {
        printf("%c%d",s[ans[i]].c,s[ans[i]].num);
        if(i<54) printf(" ");
        else printf("\n");
    }
    return 0;
}

 

PAT (Advanced Level) 1042. Shuffling Machine (20)

标签:

原文地址:http://www.cnblogs.com/zufezzt/p/5526910.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!