Cod sursa(job #2538939)
| Utilizator | Data | 5 februarie 2020 13:17:52 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 85 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.56 kb |
#include <fstream>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int i, n, a, j, m1,m2, suma;
long long int s[6000001], b, minim;
int main()
{
fin>>n;
for(i=1; i<=n; i++)
{
fin>>a;
s[i]=s[i-1]+a;
}
minim=0;
for(i=1; i<=n; i++)
{
b=s[i]-minim;
if(minim>s[i])
{
minim=s[i];
m1=i+1;
}
if(suma<b)
{
suma=b;
m2=i;
}
}
fout<<suma<<" "<<m1<<" "<<m2;
return 0;
}
