萌新求助一个小小的问题QWQ
查看原帖
萌新求助一个小小的问题QWQ
1299348
RockyQ012楼主2024/6/24 21:29

AC了,但有个问题,我最开始的思路是这样的,我们把这2^n个国家分为左右两个部分,亚军一定是左半边最强的国家与右半边最强的国家之间较弱的那个。敲出来后样例也过了,但WA了,求神犇指点QWQ。

#include <bits/stdc++.h>
using namespace std;
const int N = 130;
int a[N];
int main()
{
    int n;
    cin >> n;
    int max_1 = -1;
    int max_2 = -1;
    int ans = 1;    
    for(int i = 1 ; i <= n ; ++i) {
        ans *= 2;
    }
    for(int i = 1 ; i <= ans * 0.5; ++i) {
        cin >> a[i];
        if(a[i] > max_1) max_1 = a[i];
    }
    for(int i = 0.5 * ans + 1 ; i <= ans ; ++i){
        cin >> a[i];
        if(a[i] > max_2) max_2 = a[i];
    }
    cout << min(max_1 , max_2);
    return 0;
}

是我思路不对吗?

2024/6/24 21:29
加载中...