같은 길이의 문자열이 입력되었을 때 아나그램을 만족하는지 알아보라.
int main(int argc, char** argv) {
char char1[100];
char char2[100];
bool isAnagram = true;
//freopen("input.txt", "rt", stdin);
scanf("%s", char1);
scanf("%s", char2);
std::unordered_map<char, int> umap;
std::unordered_map<char, int> umap2;
for (int i = 0; char1[i] != '\0'; ++i)
{
umap[char1[i]]++;
umap2[char2[i]]++;
}
for (int i = 0; char1[i] != '\0'; ++i)
{
if (umap2.find(char1[i]) != umap2.end())
{
if (umap[char1[i]] != umap2[char1[i]])
{
isAnagram = false;
break;
}
}
else
{
isAnagram = false;
break;
}
}
if(isAnagram == true)
printf("YES");
else
printf("NO");
return 0;
}