Advertisement
dimon-torchila

Untitled

Mar 9th, 2022
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.09 KB | None | 0 0
  1. #include<iostream>
  2. #include<vector>
  3. #include<utility>
  4. #include<sstream>
  5.  
  6. using namespace std;
  7. using Pairs = vector<pair<int, int>>;
  8.  
  9. Pairs foo(const vector<int>& v) {
  10.     Pairs pairs;
  11.     int first = v[0];
  12.     int second = v[0], k = 0;
  13.     for (size_t i = 1; i < v.size(); ++i) {
  14.         if (second < v[i]) {
  15.             second = v[i];
  16.             ++k;
  17.         }
  18.         else {
  19.             if (k != 0) {
  20.                 pairs.push_back({ first, second });
  21.                 first = v[i];
  22.                 second = v[i];
  23.                 k = 0;
  24.             }
  25.             else {
  26.                 first = v[i];
  27.                 second = v[i];
  28.             }
  29.         }
  30.         if (i == v.size() - 1) {
  31.             if (second != 0)
  32.                 pairs.push_back({ first, second });
  33.         }
  34.     }
  35.     return pairs;
  36. }
  37.  
  38. ostream& operator<<(ostream& stream, const Pairs& pairs) {
  39.     for (const auto& item : pairs) {
  40.         stream << item.first << ' ' << item.second << endl;
  41.     }
  42.     return stream;
  43. }
  44.  
  45. int main()
  46. {
  47.     vector<int> v = { 2,1,2,4,3,2,3,5 };
  48.     cout << foo(v);
  49. }
  50.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement