1

基本的に、2 つのサブクエスチョンに問題があります。最初の質問: 与えられた 2 つの文字列がアナグラムかどうかを判断します。2番目は少し難しいです。N 個の文字列があり、それらが互いのアナグラムであるかどうかを判断する必要があります。

最初のものは解決したので、以下にコードを書きますが、2番目のものはわかりません。文字列の配列から N 個の文字列を読み取り、 for シーケンスを使用してそれぞれを読み取り、比較することで何とかできると思っていましたが、正確な方法がわかりません。

#include "stdafx.h"
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;

int main() {
    string word1; string word2;

    getline(cin,word1);
    getline(cin,word2);

    if(word1.length()==word2.length()){
        sort(word1.begin(), word1.end());
        sort(word2.begin(), word2.end());
    if(word1==word2) cout<<"The words are anagrams of each other"<<endl;
    else cout<<"The words are not anagrams of each other"<<endl;
    }
    else cout<<"The words are not the same length"<<endl;
return 0;
}
4

2 に答える 2