Advertisement
Guest User

Untitled

a guest
Jan 3rd, 2019
200
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.10 KB | None | 0 0
  1. #include <iostream>
  2. #include <sstream>
  3. #include <unordered_map>
  4.  
  5. int main() {
  6.   std::ios_base::sync_with_stdio(false);
  7.   std::cin.tie(nullptr);
  8.  
  9.   std::unordered_map<std::string, std::unordered_map<std::string, int> > data;
  10.   std::unordered_map<int, std::string> mapper;
  11.  
  12.   std::istringstream input_stream;
  13.   std::string line, word;
  14.  
  15.   std::getline(std::cin >> std::ws, line);
  16.   input_stream.str(line);
  17.   int index = 0;
  18.   while (input_stream && (input_stream >> word)) {
  19.     mapper[index++] = word;
  20.     data[word];
  21.   }
  22.  
  23.   std::getline(std::cin >> std::ws, line);
  24.   while (line != "end") {
  25.     input_stream.clear();
  26.     input_stream.str(line);
  27.  
  28.     index = 0;
  29.  
  30.     while (input_stream && (input_stream >> word)) {
  31.       data[mapper[index++]][word]++;
  32.     }
  33.  
  34.     std::getline(std::cin >> std::ws, line);
  35.   }
  36.  
  37.   std::cin >> std::ws >> word;
  38.  
  39.   int most = -1;
  40.   std::string best;
  41.   for (const auto& entry : data[word]) {
  42.     if (entry.second > most) {
  43.       most = entry.second;
  44.       best = entry.first;
  45.     }
  46.   }
  47.  
  48.   std::cout << best << " " << most << std::endl;
  49.  
  50.   return 0;
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement