В основном у меня проблема с 2 подвопросами. Первый вопрос: учитывая 2 строки, определите, являются ли они анаграммами. Второй немного сложнее. У вас есть N строк, и вы должны определить, являются ли они анаграммами друг друга.
Я решил первый и напишу код ниже, но для второго я понятия не имею. Я думал, что это можно как-то сделать, прочитав 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;
}
string1
является анаграммойstring2
иstring3
, тоstring2
иstring3
определенно являются анаграммами друг друга - person digital_revenant   schedule 17.10.2013