MAGCARI

Cats

Jan 21st, 2023
1,341
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.71 KB | None | 0 0
  1. /*
  2.     Task    : _example
  3.     Author  : Phumipat C. [MAGCARI]
  4.     Language: C++
  5.     Created : 22 January 2023 [11:51]
  6. */
  7. #include<bits/stdc++.h>
  8. using namespace std;
  9. int a[2000010];
  10. int main(){
  11.     cin.tie(0)->sync_with_stdio(0);
  12.     cin.exceptions(cin.failbit);
  13.     int n,mx = 0;
  14.     cin >> n;
  15.     for(int i=1;i<=n;i++){
  16.         cin >> a[i];
  17.         mx = max(mx,a[i]);
  18.     }
  19.     long long l = 0,r = mx,mid;
  20.     while(l<r){
  21.         mid = (l+r)/2;
  22.         long long last = 0;
  23.         bool can = true;
  24.         for(int i=1;i<=n;i++){
  25.             if(a[i] <= mid) continue;
  26.             if(a[i] != last && last != 0){
  27.                 can = false;
  28.                 break;
  29.             }else if(a[i] == last && last != 0){
  30.                 last = 0;
  31.             }else if(last == 0){
  32.                 last = a[i];
  33.             }
  34.         }
  35.         if(can) r = mid;
  36.         else    l = mid+1;
  37.     }
  38.     cout << l << '\n';
  39.     return 0;
  40. }
Advertisement
Add Comment
Please, Sign In to add comment