Advertisement
Technoblade777

1 5 A

Jul 21st, 2023
714
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.42 KB | None | 0 0
  1. #include<iostream>
  2. #include<vector>
  3. using namespace std;
  4.  
  5.  
  6. int main()
  7. {
  8.     freopen("/home/daminator/Desktop/Programming/YandexAlgorithms/1.0/5.  Префиксные суммы и два указателя/test.cpp", "r", stdin);
  9.     freopen("/home/daminator/Desktop/Programming/YandexAlgorithms/1.0/5.  Префиксные суммы и два указателя/test.cpp", "w", stdout);
  10.     ios::sync_with_stdio();
  11.     cin.tie(0);
  12.     int N, M;
  13.     cin>>N;
  14.     vector<int> shirts;
  15.     vector<int> shorts;
  16.     for(int i = 0; i < N; i++)
  17.     {
  18.         int x;
  19.         cin >> x;
  20.         shirts.push_back(x);
  21.     }
  22.     cin >> M;
  23.     for(int i = 0; i < M; i++)
  24.     {
  25.         int x;
  26.         cin >> x;
  27.         shorts.push_back(x);
  28.     }
  29.     int mn = abs(shirts[0]-shorts[0]);
  30.     int mnN = shirts[0], mnM = shorts[0];
  31.     int J = 0;
  32.     for(int i = 0; i < N; i++)
  33.     {
  34.         int n = shirts[i];
  35.         for(int j = J; j < M; j++)
  36.         {
  37.             int m = shorts[j];
  38.             if(n==m){cout << n << " " << m; return 0;}
  39.  
  40.             if(m<n)
  41.             {
  42.                 if(abs(n-m)<mn){mn = abs(n-m); mnN = n, mnM = m; J = j;}
  43.                 else{J = j;}
  44.             }
  45.  
  46.             if(m>n)
  47.             {
  48.                 if(abs(n-m)<mn){mn = abs(n-m); mnN = n, mnM = m; J = j;}
  49.                 else{J = j; break;}
  50.             }
  51.  
  52.         }
  53.     }
  54.     cout << mnN << " " << mnM;
  55.     return 0;
  56. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement