HDU2015校赛 The Country List

今天手感真差。。各种读错题意。水题。。。

就是说,给你几个串。如果长度一样并且相同位置字符相同(不分大小写)的个数大于两个就是不同串。

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cstdlib>
 4 #include<stack>
 5 #include<queue>
 6 #include<vector>
 7 #include<map>
 8 #include<string.h>
 9 #include<algorithm>
10 using namespace std;
11 
12 char str[110][110];
13 int n;
14 int main()
15 {
16     while(~scanf("%d",&n))
17     {
18         int val[110];
19         memset(val,0,sizeof(val));
20         int sum=0;
21         for(int i=0; i<n; i++)
22             scanf("%s",str[i]);
23         for(int i=0; i<n; i++)
24         {
25             for(int j=i+1; j<n; j++)
26             {
27                 int len1=strlen(str[i]);
28                 int len2=strlen(str[j]);
29                 if(len1!=len2)
30                     continue;
31                 int ans=0;
32                 for(int k=0; k<len1; k++)
33                 {
34                     if(str[i][k]==str[j][k]||str[i][k]-'a'==str[j][k]-'A'||str[i][k]-'A'==str[j][k]-'a')
35                         ans++;
36                 }
37                 if(ans>2)
38                 {
39 //                    if(!val[i])
40 //                        sum+=2;
41 //                    else
42 //                        sum++;
43                     val[i]=1;
44                     val[j]=1;
45                 }
46             }
47         }
48         for(int i=0;i<n;i++)
49         {
50             if(val[i])
51                 sum++;
52         }
53         printf("%d\n",sum);
54     }
55     return 0;
56 }
View Code

 

posted @ 2015-12-26 16:51  yyblues  阅读(300)  评论(0编辑  收藏  举报