Anagrams问题

 1 #include <cstdio>
 2 #include <cstring>
 3 #include <cmath>
 4 #include <map>
 5 #include <string>
 6 using namespace std;
 7 map<char,int> s0,s1;
 8 char str0[90],str1[90];
 9 
10 void zh(char str0[],int len0,char str1[],int len1)
11 {
12     for(int i=0;i<len0;i++)
13         if(str0[i]>='A'&&str0[i]<='Z')
14             str0[i]+=32;
15     for(int i=0;i<len1;i++)
16         if(str1[i]>='A'&&str1[i]<='Z')
17             str1[i]+=32;
18 }
19 int main()
20 {
21     int i,j,len0,len1;
22     scanf("%s%s",str0,str1);
23     len0=strlen(str0);    len1=strlen(str1);
24     zh(str0,len0,str1,len1);
25     
26     for(i=0;i<len0;i++)
27         s0[str0[i]]++;
28     for(i=0;i<len1;i++)
29         s1[str1[i]]++;
30     char c='a';
31     for(c;c<='z';c++)
32     {
33         if(s0[c]!=s1[c])
34         {
35             printf("N\n");
36             return 0;
37             
38         }
39     }    
40     printf("Y\n");
41     return 0;
42 }
View Code

这题如果用map容器的话可能更好些吧,现在还没能清楚,有时间在系统做下吧

posted on 2016-01-19 22:52  青春的梦想付诸行动  阅读(108)  评论(0)    收藏  举报

导航