您的位置:首页 > 编程语言 > C语言/C++

Uva-1339 Ancient Cipher

2017-04-16 18:35 344 查看


虽说课本上讲的是将函数当作参数一样使用,但是这题可以不用那么做。

代码:#include <bits/stdc++.h>
using namespace std;
#define maxn 100 + 5
string a, b;
int cnt[maxn], cnt2[maxn];
void ssor(int *s)
{
int t, i, j;
int len = 26;
for(int i = 0; i < len; i++)
{
for(int j = i + 1; j < len; j++)
if(s[i] > s[j])
{
t = s[i];
s[i] = s[j];
s[j] = t;
}
}
}
int main()
{
while(cin>>a>>b)
{
int len1 = a.length(), len2 = b.length();
memset(cnt,0,sizeof(cnt));
memset(cnt2,0,sizeof(cnt2));
if(len1 != len2)
cout<<"NO"<<endl;
else
{
for(int i = 0; i < len1; i++)
{
cnt[a[i] - 'A']++;
cnt2[b[i] - 'A']++;
}
ssor(cnt);
ssor(cnt2);
int flag = 1;
for(int i = 0; i < 26; i++)
if(cnt[i] != cnt2[i])
flag = 0;
if(flag)
cout<<"YES"<<endl;
else
cout<<"NO"<<endl;
}
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  uva c++