Cod sursa(job #3141390)
| Utilizator | Data | 13 iulie 2023 20:20:48 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 35 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.64 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("ssm.in");
ofstream fout ("ssm.out");
long long v[6000006];
long long s[6000006];
int main()
{
int n;
fin >> n;
s[0] = 0;
for (int i=1;i<=n;++i){
fin >> v[i];
s[i] = s[i-1]+v[i];
}
int MAX = -999999999;
int st = 1;
int dr = 1;
for (int i=1;i<n;++i){
for (int j=i+1;j<=n;++j){
int x = s[j]-s[i-1];
if (x>MAX){
MAX = x;
st = i;
dr = j;
}
}
}
fout << MAX << ' ' << st << ' ' << dr;
return 0;
}
