Mai intai trebuie sa te autentifici.
Cod sursa(job #2961009)
| Utilizator | Data | 5 ianuarie 2023 15:44:48 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.83 kb |
#include <fstream>
using namespace std;
int n , sum , summax , elem , in , fin , inmax , finmax , pozmax ;
ifstream cin("ssm.in");
ofstream cout("ssm.out");
int main()
{
cin >> n;
int maxim = -1e9;
in = 1;
fin = 0;
for(int i = 1 ; i <= n ; i++){
cin >> elem;
sum += elem;
if(sum < 0){
sum = 0;
in = i+1;
fin = i;
}else fin++;
if(sum > summax){
summax = sum;
inmax = in;
finmax = fin;
}
if(elem > maxim){
maxim = elem;
pozmax = i;
}
}
if(fin < in){
cout << maxim << ' '<< pozmax << ' ' << pozmax;
}else cout << summax << ' ' << inmax << ' ' << finmax;
return 0;
}
