首页 > 其他 > 详细

PAT1042 Shuffling Machine

时间:2014-02-27 21:33:34      阅读:486      评论:0      收藏:0      [点我收藏+]

1040. Longest Symmetric String (25)

时间限制
400 ms
内存限制
32000 kB
代码长度限制
16000 B
判题程序
Standard
作者
CHEN, Yue

Given a string, you are supposed to output the length of the longest symmetric sub-string. For example, given "Is PAT&TAP symmetric?", the longest symmetric sub-string is "s PAT&TAP s", hence you must output 11.

Input Specification:

Each input file contains one test case which gives a non-empty string of length no more than 1000.

Output Specification:

For each test case, simply print the maximum length in a line.

Sample Input:
Is PAT&TAP symmetric?
Sample Output:
11

意:模拟一个洗牌机,大致的功能是如果位置i的数字是j,那么就把位置i的牌移动到位置j去,求n次洗牌后牌堆的位置。

思路:基本就是哈希了,没什么技巧性。

#include<iostream>
#include<string>

using namespace std;

string str[60],str1[60];
char ch[4]={‘S‘,‘H‘,‘C‘,‘D‘};
int arry[60];

int main()
{
    int n;
    int i,j,k;
    char ch1;
    for(k=0;k<4;k++)
    {
        for(i=1;i<=13;i++)
        {
            if(i>=10)
            {
                ch1=‘0‘+(i%10);
                str[k*13+i]=str[k*13+i]+ch[k]+‘1‘+ch1;
            }
            else
            {
                ch1=‘0‘+i;
                str[k*13+i]=str[k*13+i]+ch[k]+ch1;
            }
        }
    }
    str[53]="J1",str[54]="J2";
    //for(i=1;i<=54;i++) cout<<str[i]<<endl;
    cin>>n;
    for(i=1;i<=54;i++)
    {
        cin>>k;
        arry[i]=k;
    }
    while(n--)
    {
        for(i=1;i<=54;i++)
        {
            str1[arry[i]]=str[i];
        }
        for(i=1;i<=54;i++)
        {
            str[i]=str1[i];
        }
    }
    for(i=1;i<=53;i++)
        cout<<str1[i]<<" ";
    cout<<str1[i]<<endl;
    return 0;
}


PAT1042 Shuffling Machine,布布扣,bubuko.com

PAT1042 Shuffling Machine

原文:http://blog.csdn.net/zju_ziqin/article/details/20004093

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!