比赛 2026.8.26 评测结果 TAAAAATTTT
题目名称 game 最终得分 50
用户昵称 yanglich 运行时间 10.625 s
代码语言 C++ 内存使用 7.41 MiB
提交时间 2026-08-26 12:01:53
显示代码纯文本
#include<bits/stdc++.h>
#define int long long
using namespace std;
int t,n,a[500005],sum[500005];
void solve(){
    cin>>n;
    sum[0]=0;
    int b=0,p=0;
    for(int i=1;i<=n;i++){
        cin>>a[i];
        if(!b){
            b=a[i];
        }
        else if(b!=a[i]){
            p=1;
        }
        sum[i]=sum[i-1]+a[i];
    }
    if(!p){
        int l=n/2-1;
        cout<<sum[n]-l*b<<" "<<l*b<<"\n";
        return;
    }
    int l=1,r=n,x=n/2,y=n/2+1,ans=0;
    while(l<x&&y<r){
        int u=sum[x-1]-sum[l-1],v=sum[r]-sum[y];
        //cout<<u<<" "<<v<<"---\n";
        if(u>v){
            ans+=a[l];
            l++;
            y++;
        }
        else if(u<v){
            ans+=a[r];
            r--;
            x--;
        }
        else if(a[l]>a[r]){
            ans+=a[l];
            l++;
            y++;
        }
        else{
            ans+=a[r];
            r--;
            x--;
        }
    }
    cout<<sum[n]-ans<<" "<<ans<<"\n";
}
signed main(){
    freopen("gameemag.in","r",stdin);
    freopen("gameemag.out","w",stdout);
    cin>>t;
    while(t--){
        solve();
    }
    return 0;
}