6年级萌新求助一个小小问题qwq
查看原帖
6年级萌新求助一个小小问题qwq
1299348
RockyQ012楼主2024/6/24 22:05

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 22:05
加载中...