hdu 2736 Surprising Strings(类似哈希,字符串处理)

重点在判重的方法,嘻嘻

题目

#define  _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
int main()
{
    int i,j,len,mark[100000],num,flag;
    char ch[510];
    while(gets(ch))
    {
        if(strcmp("*",ch)==0)break;
        len=strlen(ch);
        flag=0;
        for(i=1;i<len;i++)
        {
            memset(mark,0,sizeof(mark));
            for(j=0;j<len-i;j++)
            {
                num=(ch[j]-'A'+1)*100+ch[j+i]-'A'+1;
                if(mark[num]==1)
                {
                    flag=1;
                    break;
                }
                mark[num]=1;
            }
            if(flag==1)break;
        }
        if(flag==1)
            printf("%s is NOT surprising.
",ch);
        else
            printf("%s is surprising.
",ch);
    }
    return 0;
}
View Code
一道又一道,好高兴!
原文地址:https://www.cnblogs.com/laiba2004/p/3527872.html