蓝桥15/B/5/拔河

点击查看代码
#pragma GCC optimize("O3,unroll-loops")
#include<bits/stdc++.h>
using namespace std;

const int N=1e3+10;
int n;
long long a[N];

int main()
{
    ios::sync_with_stdio(0),cin.tie(0);
    cin>>n;
    
    for(int i=1;i<=n;i++) cin>>a[i];
    
    int l1=1,l2=2;
    set<long long> st;
    
    long long ans=2e18;
    for(l2=2;l2<=n;l2++,l1++){
        long long sum1=0;
        for(int r1=l1;r1<=n;r1++){
            sum1+=a[r1];
            st.insert(sum1);
        }
        
        long long sum2=0;
        for(int r2=l2;r2<=n;r2++){
            sum2+=a[r2];
            if(!st.empty()){
                auto ps = st.lower_bound(sum2);
                if(ps!=st.end()){
                    ans=min(ans,*ps-sum2);
                }
                if(ps!=st.begin()){
                    ans=min(ans,sum2-*prev(ps));
                }
            }
        }
        
    }
    
    cout<<ans<<"\n";
    
    return 0;
    
}
posted @ 2026-03-06 22:32  AnoSky  阅读(3)  评论(0)    收藏  举报