码迷,mamicode.com
首页 > 其他好文 > 详细

[ AGC006 D ] Median Pyramid Hard

时间:2021-06-02 15:33:04      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:else   ons   com   dia   href   iostream   pac   img   cout   

题目

Atcoder

思路

技术图片 技术图片

代码

#include <iostream>
using namespace std;
const int N = 200010;
int n, m, a[N], b[N];
int check(int mid) {
    for (int i = 1; i <= n * 2 - 1; i++) 
        b[i] = a[i] >= mid;
    int p = 2e9, res = b[1];
    for (int i = n; i <= 2 * n - 1; i++) 
        if (b[i] == b[i + 1] && i - n < p) p = i - n, res = b[i];
    for (int i = n; i >= 1; i--)
        if (b[i] == b[i - 1] && n - i < p) p = n - i, res = b[i];
    return res;
}
int main() {
    cin >> n;
    for (int i = 1; i <= n * 2 - 1; i++) cin >> a[i];
    int l = 1, r = 2 * n - 1;
    while (l < r) {
        int mid = (l + r + 1) >> 1;
        if (check(mid)) l = mid;
        else r = mid - 1;
    }
    cout << l << endl;
    return 0;
}

[ AGC006 D ] Median Pyramid Hard

标签:else   ons   com   dia   href   iostream   pac   img   cout   

原文地址:https://www.cnblogs.com/Proteinlzl/p/14824980.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!