Mai intai trebuie sa te autentifici.
Cod sursa(job #2029862)
| Utilizator | Data | 30 septembrie 2017 16:01:58 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.61 kb |
#include <iostream>
#include <fstream>
#include <climits>
using namespace std;
ifstream fin ("ssm.in");
ofstream fout ("ssm.out");
int length, sMax = INT_MIN, startPoz, endPoz, minPoz, sCur;
int main() {
fin>>length;
for(int iter = 1; iter <= length; ++iter){
int number;
fin>>number;
if(sCur < 0){
sCur = number;
minPoz = iter;
} else{
sCur += number;
}
if(sCur > sMax){
sMax = sCur;
startPoz = minPoz;
endPoz = iter;
}
}
fout<<sMax<<' '<<startPoz<<' '<<endPoz;
return 0;
}