#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
#include <utility>
int countAnagrams(const std::vector<std::string>& T, const std::string& S) {
std::string sortedS = S;
std::sort(sortedS.begin(), sortedS.end());
int count = 0;
for (const auto& word : T) {
std::pair<std::string, std::string> p = {word, word};
std::sort(p.second.begin(), p.second.end());
if (p.second == sortedS) count++;
}
return count;
}
int main() {
std::vector<std::string> T = {"listen", "silent", "enlist", "google", "inlets", "banana"};
std::string S = "listen";
std::cout << "Количество анаграмм: " << countAnagrams(T, S) << std::endl;
return 0;
}
Текст Т из {слово}
Дано слово S
Сколько в Т слов, которые можно получить перестановкой букв в S?
Обязательно
Т = vector<string>
S = string
с помощью pair