Знайти кількість входжень кожного з різних символів одного текстового рядка до іншого.
C++
STRING
Ответы
#include <iostream>
#include <string>
#include <vector>
#include <map>
using namespace std;
int main() {
string first_string;
string second_string;
map < char, int > letters;
vector < char > unic_letters;
cout << "Enter the first string: ";
getline(cin, first_string);
for (int i = 0; i < first_string.length(); i++) {
first_string[i] = tolower(first_string[i]);
}
cout << "Enter the second string: ";
getline(cin, second_string);
for (int i = 0; i < second_string.length(); i++) {
second_string[i] = tolower(second_string[i]);
}
for (int i = 0; i < first_string.length(); i++) {
if (letters.find(first_string[i]) == letters.end()) {
letters.insert(pair < char, int > (first_string[i], 0));
unic_letters.push_back(first_string[i]);
}
}
for (int i = 0; i < unic_letters.size(); i++) {
for (int j = 0; j < second_string.length(); j++) {
if (unic_letters[i] == second_string[j]) {
letters[unic_letters[i]]++;
}
}
}
for (int i = 0; i < unic_letters.size(); i++) {
cout << unic_letters[i] << ": " << letters[unic_letters[i]] << endl;
}
return 0;
}