Cod sursa(job #1551181)
| Utilizator | Data | 15 decembrie 2015 11:46:10 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.51 kb |
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
int n,k,sum,bestSum = -(1 << 30),beg,fin,index;
int main()
{
f >> n;
for(int i = 1; i <= n; ++i)
{
f >> k;
if(sum < 0)
sum = k, index = i;
else
sum += k;
if(bestSum < sum)
bestSum = sum, beg = index, fin = i;
}
g << bestSum << " " << beg << " " << fin;
return 0;
}
