2025-07-28_001.jpg

以上是我的分析思路,这个思路我认为是十分清晰的
题目地址:https://www.luogu.com.cn/problem/P1199
以下是我的代码

#include <bits/stdc++.h>
using namespace std;
bool cmp(long long a, long long b) {
    return a > b;  // 降序排列
}
int main(){
    int n;
    cin>>n;
    long long a[n+1][n+1];
    memset(a,0,sizeof(a));
    for(int i=1;i<n;i++){
        for(int j=1;j<=n-i;j++){
            long long c;
            cin>>c;
            a[i][j+i]=c;
            a[j+i][i]=c;
        }
    }
    long long m[n+1];
    memset(m,0,sizeof(m));
    for (int i = 1; i <= n; ++i) {
        std::sort(a[i] + 1, a[i] + n + 1, cmp);  // 降序排序

        long long max_val = a[i][1];
        long long second_max = -1;

    for (int j = 1; j <= n; ++j) {
        if (a[i][j] < max_val) {
            second_max = a[i][j];
            break;
        }
    }

    m[i] = second_max;
}
    long long ans=0;
    for(int i=1;i<=n;i++){
        if(m[i]>ans){
            ans=m[i];
        }
    }
    cout<<'1'<<endl;
    cout<<ans<<endl;
    return 0;
}
最后修改:2025 年 07 月 28 日
如果觉得我的文章对你有用,请随意赞赏