竞赛讨论区 > 丢手绢不知道漏了哪一点,恳请好心人帮忙
头像
人若深情必有憾
发布于 2022-03-22 21:11
+ 关注

丢手绢不知道漏了哪一点,恳请好心人帮忙

通过了80%,用双指针写的,想了一下午也想不明白怎么回事😫
#include<iostream>
#include<algorithm>
using namespace std;
int a[101000];
int main()
{
    int n;
    cin>>n;
    int dis=0;
    for(int i=1;i<=n;i++){
        cin>>a[i];
        dis+=a[i];
    }
    a[0]=a[n];
    int r=0,ans=0,temp=0;
    for(int l=1;l<=n;l++){
        while(temp<dis/2){
            r++;
            temp+=a[r%n];
        }
        if(temp==dis)continue;
        temp=min(dis-temp,temp);
        ans=max(temp,ans);
        temp-=a[l];
    }
    cout<<ans;
}


全部评论

(2) 回帖
加载中...
话题 回帖

本文相关内容

等你来战

查看全部

热门推荐