Cod sursa(job #2768004)
Utilizator | Data | 8 august 2021 21:57:15 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 90 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.52 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int a[6000005];
int main() {
int best = 0, sum = 0, x ,y;
int n, xf, yf;
fin >> n;
for(int i = 0; i < n; i++)
fin >> a[i];
for (int k = 0; k < n; k++) {
if(sum + a[k] > a[k])
sum += a[k], y = k + 1;
else
sum = a[k], x = k + 1;
if(best < sum)
best = sum , xf = x, yf = y;
}
fout << best << " " << xf << " " << yf;
return 0;
}