比赛 |
板子大赛 |
评测结果 |
AAAAAAAAAA |
题目名称 |
单子序列最大和 |
最终得分 |
100 |
用户昵称 |
李奇文 |
运行时间 |
0.111 s |
代码语言 |
C++ |
内存使用 |
3.48 MiB |
提交时间 |
2025-01-22 10:12:22 |
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
int f[1000010],a[1000010];
int main(){
freopen("subq.in","r",stdin);
freopen("subq.out","w",stdout);
int n;
std::cin>>n;
for(int i=1;i<=n;i++) cin>>a[i];
f[n]=a[n];
for(int i=n-1;i>=1;i--) f[i]=max(f[i+1]+a[i],a[i]);
int ans=f[n],l=n;
for(int i=n-1;i>=1;i--){
if(f[i]>=ans){
ans=f[i];
l=i;
}
}
int u=ans,r=l;
while(u){
u-=a[r];
r++;
}
std::cout<<l<<endl<<r-1<<endl<<ans;
return 0;
}