酷酷的单词

http://acm.hunnu.edu.cn/online/?action=problem&type=show&id=11572&courseid=0

题目 C. 酷酷的单词

输入一些仅由小写字母组成的单词。你的任务是统计有多少个单词是“酷”的,即每种字母出
现的次数都不同。

比如 ada 是酷的,因为 a 出现 2 次,d 出现 1 次,而 1 和 2 不同。再比如,banana 也是酷的,
因为 a 出现 3 次,n 出现 2 次,b 出现 1 次。但是,bbacccd 不是酷的,因为 a 和 d 出现的次数
相同(均为 1 次)。

输入格式
输入包含不超过 30 组数据。每组数据第一行为单词个数 n (1<=n<=10000)。以下 n 行各包含一
个单词,字母个数为 1~30。

输出格式
对于每组数据,输出测试点编号和酷单词的个数。

样例输入 样例输出
2
ada
bbacccd
2
illness
a
Case 1: 1
Case 2: 0

#include<iostream>
#include<cstdio>
#include<cstring>
char  s[10005][10005];
using namespace std;
int main()
{
    int t=1,n;
    while(~scanf("%d",&n))
    {
      int a[30],y=0,i,j,k;
    for(i=1;i<=n;i++)
    {
      scanf("%s",s[i]);
        int l=strlen(s[i]);
        memset(a,0,sizeof(a));
        for(j=0;j<l;j++)
        {
            a[s[i][j]-'a']++;
        }
        int flag=0;
       //for(j=0;j<30;j++)
          //  printf("%d ",a[j]);
        //printf("\n");
        for(j=0;j<30;j++)
          {
            for(k=0;k<30;k++)
             {

                if(j!=k&&a[j]==a[k]&&a[j]>0)
                    {//printf("LL\n");
                        flag=1;
                        break;
                    }
             }
              if(flag==1)
                  break;
          }
          if(flag==0&&l>1)
              y++;

    }
   printf("Case %d: %d\n",t++,y);

    }
    return 0;
}

 

posted @ 2015-08-25 20:06  疯狂的癫子  阅读(503)  评论(0编辑  收藏  举报