O_Egor

18(list)!!! (1 балл)

Oct 24th, 2019
285
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.39 KB | None | 0 0
  1. #include <vector>
  2. #include <iostream>
  3. #include <algorithm>
  4. #include <cmath>
  5. #include <string>
  6. #include <set>
  7. #include <map>
  8. #include <list>
  9.  
  10. using namespace std;
  11.  
  12. #define re return
  13. #define pb push_back
  14. #define eb emplace_back
  15. #define all(x) (x).begin(), (x).end()
  16. #define fi first
  17. #define se second
  18. #define sqrt(x) sqrt(abs(x))
  19. #define pi (3.14159265358979323846264338327950288419716939937510)
  20. #define unique(v) v.resize(unique(all(v)) - v.begin())
  21. #define bipbup ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0)
  22.  
  23. typedef vector<int> vi;
  24. typedef vector<vi> vvi;
  25. typedef pair<int, int> ii;
  26. typedef vector<ii> vii;
  27. typedef vector<string> vs;
  28. typedef double D;
  29. typedef long double ld;
  30. typedef long long ll;
  31. typedef pair<ll, ll> pll;
  32. typedef vector<ll> vll;
  33. typedef unsigned long long ull;
  34.  
  35. int main()
  36. {
  37.     list <string> l;
  38.     string s, trash;
  39.     int k;
  40.     cin >> k;
  41.     getline(cin, trash);
  42.     for (int i = 0; i < k; ++i)
  43.     {
  44.         //cin >> s;
  45.         getline(cin, s);
  46.         l.push_back(s);
  47.     }
  48.     /*list <string> ::iterator it(l.begin());
  49.     for (it; it != l.end(); ++it)
  50.         cout << *it << '\n';*/
  51.     int n;
  52.     cin >> n;
  53.     getline(cin, trash);
  54.     for (int i = 0; i < n; ++i)
  55.     {
  56.         bool f(1);
  57.         getline(cin, s);
  58.         list <string>::iterator it(l.begin());
  59.         for (it; it != l.end(); ++it)
  60.         {
  61.             if (!(s > * it))
  62.             {
  63.                 f = 0;
  64.                 l.insert(it, s);
  65.                 break;
  66.             }
  67.         }
  68.         if (f)
  69.             l.push_back(s);
  70.     }
  71.     cout << "\n\n";
  72.     list <string> ::iterator it(l.begin());
  73.     for (it; it != l.end(); ++it)
  74.         cout << *it << '\n';
  75.     re 0;
  76. }
  77. /**
  78. 5
  79. Gore ot yma
  80. Otci I deti
  81. Repka
  82. Revizor
  83. Voina I mir
  84. 3
  85. Mertvie dyshi
  86. Prestyplenie I nakazanie
  87. Tri tovarisha
  88.  
  89. **/
Add Comment
Please, Sign In to add comment