输入格式:
- 输入第1行给出正整数K (≤100000);第2行给出K个整数,其间以空格分隔。
输出格式:
- 在一行中输出最大子列和。如果序列中所有整数皆为负数,则输出0。
输入样例:
6
-2 11 -4 13 -5 -2
结尾无空行
输出样例:
20
结尾无空行
AC:
#include <bits/stdc++.h>
using namespace std;
int main()
{
std::ios_base::sync_with_stdio(false);
int n, sum = 0, temp, max = 0;
cin >> n;
while (n--)
{
cin >> temp;
sum += temp;
if (sum > max)
max = sum;
if (sum < 0)
sum = 0;
}
cout << max << endl;
return 0;
}