Cod sursa(job #2096874)
| Utilizator | Data | 29 decembrie 2017 23:17:45 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 95 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.6 kb |
#include <iostream>
#include <fstream>
using namespace std;
long int N;
ifstream in("ssm.in");
ofstream out("ssm.out");
int main()
{
in>>N;
int nr;
int pS, pD, poz, sMax = -2147483646;
long long int sum = 0;
for(int i=1; i<=N; i++)
{
in>>nr;
if(sum > 0)
sum += nr;
else
{
sum = nr;
poz = i;
}
if(sum > sMax)
{
sMax = sum;
pS = poz;
pD = i;
}
}
out<<sMax<<' '<<pS<<' '<<pD;
return 0;
}
