#include <stdio.h>
#include <string.h>
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
int i,j,len,num;
int cnt1[30],cnt2[30];
char st1[105],st2[105];
while(~scanf("%s",st1))
{
num=0;
scanf("%s",st2);
memset(cnt1,0,sizeof(cnt1));
memset(cnt2,0,sizeof(cnt2));
len=strlen(st1);
for(i=0;i<len;i++)
{
cnt1[st1[i]-'A']++;
cnt2[st2[i]-'A']++;
}
sort(cnt1,cnt1+26);
sort(cnt2,cnt2+26);
for(i=0;i<26;i++)
if(cnt1[i]==cnt2[i]) num++;
if(num==26) printf("YES\n");
else printf("NO\n");
}
return 0;
#include <string.h>
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
int i,j,len,num;
int cnt1[30],cnt2[30];
char st1[105],st2[105];
while(~scanf("%s",st1))
{
num=0;
scanf("%s",st2);
memset(cnt1,0,sizeof(cnt1));
memset(cnt2,0,sizeof(cnt2));
len=strlen(st1);
for(i=0;i<len;i++)
{
cnt1[st1[i]-'A']++;
cnt2[st2[i]-'A']++;
}
sort(cnt1,cnt1+26);
sort(cnt2,cnt2+26);
for(i=0;i<26;i++)
if(cnt1[i]==cnt2[i]) num++;
if(num==26) printf("YES\n");
else printf("NO\n");
}
return 0;
}
心得:昨天做的,题意很难懂,要不是看紫书根本想不出来。。。还有,第一次sort函数的使用,居然是快速排序,醉了。。。