Advertisement
Guest User

Task 3 - Code - SoftUni CPP Exam

a guest
Jul 16th, 2018
165
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.18 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3. #include <sstream>
  4. #include <unordered_map>
  5. #include <vector>
  6. #include <unordered_set>
  7.  
  8. using namespace std;
  9.  
  10. int main() {
  11.     std::cin.sync_with_stdio(false); std::cout.sync_with_stdio(false);
  12.    
  13.     unordered_set<int> separators;
  14.    
  15.     string separatorLine;
  16.     getline(cin, separatorLine);
  17.    
  18.     istringstream separatorStream(separatorLine);
  19.    
  20.     int separator;
  21.     while (separatorStream >> separator) {
  22.         separators.insert(separator);
  23.     }
  24.    
  25.     string messageLine;
  26.     getline(cin, messageLine);
  27.    
  28.     istringstream messageStream(messageLine);
  29.    
  30.     int msgWord;
  31.     unordered_set<int> part;
  32.     unordered_map<int, int> occurences;
  33.    
  34.     while (messageStream >> msgWord) {
  35.         if (separators.count(msgWord)) {
  36.             part.clear();
  37.         } else {
  38.             if (!part.count(msgWord)) {
  39.                 occurences[msgWord]++;
  40.             }
  41.             part.insert(msgWord);
  42.         }
  43.     }
  44.     while (true) {
  45.         int query;
  46.         cin >> query;
  47.        
  48.         if (query == 0) {
  49.             break;
  50.         }
  51.        
  52.         cout << occurences[query] << endl;
  53.     }
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement