Cod sursa(job #2471112)
Utilizator | Data | 10 octombrie 2019 12:28:59 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.54 kb |
#include <fstream>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int n, x, s=-1 , smax = -2000000000, poz1, poz2, poz;
int main(){
fin>>n;
for(int i = 1; i <= n; ++i){
fin>>x;
if(x > s+x){
poz = i;
s = x;
} else
s += x;
if(s > smax){
smax = s;
poz1 = poz;
poz2 = i;
}
}
fout<<smax<<" "<<poz1<<" "<<poz2;
return 0;
}