Advertisement
Guest User

Task 3

a guest
Jan 22nd, 2020
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.05 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. #include <map>
  4. #include <algorithm>
  5.  
  6. using namespace std;
  7.  
  8. int main()
  9. {
  10.     string s;
  11.     vector<string> words(16);
  12.     for (int i = 0; i < 16; ++i)
  13.         cin >> words[i];
  14.     cin >> s;
  15.     string letters = "ABCDEFGHIJ";
  16.     do
  17.     {
  18.         map<char, int> m;
  19.         for (int i = 0; i < 10; ++i)
  20.             m[letters[i]] = i;
  21.         vector<int> numbers(16);
  22.         for (int i = 0; i < 16; ++i)
  23.         {
  24.             int cur_num = 0;
  25.             for (auto &c: words[i])
  26.                 cur_num = cur_num * 10 + m[c];
  27.             numbers[i] = cur_num;
  28.         }
  29.         bool correct = true;
  30.         for (int i = 1; correct && i < 16; ++i)
  31.             if (numbers[i] <= numbers[i - 1])
  32.                 correct = false;
  33.         if (correct)
  34.         {
  35.             int cur_num = 0;
  36.             for (auto &c: s)
  37.                 cur_num = cur_num * 10 + m[c];
  38.             cout << cur_num;
  39.             return 0;
  40.         }
  41.     } while (next_permutation(letters.begin(), letters.end()));
  42.     return 0;
  43. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement