Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Task : _example
- Author : Phumipat C. [MAGCARI]
- Language: C++
- Created : 22 January 2023 [11:51]
- */
- #include<bits/stdc++.h>
- using namespace std;
- int a[2000010];
- int main(){
- cin.tie(0)->sync_with_stdio(0);
- cin.exceptions(cin.failbit);
- int n,mx = 0;
- cin >> n;
- for(int i=1;i<=n;i++){
- cin >> a[i];
- mx = max(mx,a[i]);
- }
- long long l = 0,r = mx,mid;
- while(l<r){
- mid = (l+r)/2;
- long long last = 0;
- bool can = true;
- for(int i=1;i<=n;i++){
- if(a[i] <= mid) continue;
- if(a[i] != last && last != 0){
- can = false;
- break;
- }else if(a[i] == last && last != 0){
- last = 0;
- }else if(last == 0){
- last = a[i];
- }
- }
- if(can) r = mid;
- else l = mid+1;
- }
- cout << l << '\n';
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment