1339 - Ancient Cipher (UVA)

题目链接如下:

Online Judge

我的代码如下:

#include 
#include 
#include 
#include 
const int maxx = 101;
const int sz = 26;

char a[maxx], b[maxx];
int len;
int mp1[sz], mp2[sz];

int main(){
    while(scanf("%s %s", a, b) == 2){
        len = strlen(b);
        std::vector v1, v2;
        std::fill(mp1, mp1 + sz, 0);
        std::fill(mp2, mp2 + sz, 0);
        for(int i = 0; i < len; ++i){
            mp1[a[i] - 'A']++;
            mp2[b[i] - 'A']++;
        }
        for(int i = 0; i < sz; ++i){
            v1.push_back(mp1[i]);
            v2.push_back(mp2[i]);
        }
        sort(v1.begin(), v1.end());
        sort(v2.begin(), v2.end());
        printf("%s\n", v1 == v2 ? "YES" : "NO");
    }
    return 0;
}

你可能感兴趣的:(UVA,算法)