Cod sursa(job #2926581)
| Utilizator | Data | 18 octombrie 2022 08:41:49 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 75 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.54 kb |
#include <iostream>
#include <fstream>
int main(){
std::ifstream fin("ssm.in");
std::ofstream fout("ssm.out");
int n,maxSum = -10000,sum = 0,start,end;
fin >> n;
for(int i = 0; i<=n; i++){
int nr;
fin >> nr;
if(sum < 0){
sum = nr;
start = i;
}else{
sum = sum + nr;
}
if(sum > maxSum){
maxSum = sum;
end = i;
}
}
fout << maxSum << " " << start+1 << " " << end+1;
return 0;
}