您的位置:首页 > 产品设计 > UI/UE

HDOJ 5783 (2016多校联合训练 Training Contest 5) Divide the Sequence

2016-08-05 18:58 477 查看
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5783



本来一道可以出的很难的题,但是题目给了一个条件让这题变得很水。

题目保证了有解,也就是说我们不用考虑会有无解的情况,那么我们只需要直接从后面开始讨论每一位的后缀和,只要大于0就可以算成一个序列。

#include <cstdio>
const int maxn = 1000000+5;
typedef long long LL;
int a[maxn];
int main()
{
int n;
while(scanf("%d", &n) !=EOF)
{
for(int i=0; i<n; i++) scanf("%d", &a[i]);
LL sum = 0, ans = 0;
for(int i=n-1; i>=0; i--)
{
sum += a[i];
if(sum >= 0) ans++, sum = 0;
}
printf("%I64d\n", ans);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: