Cod sursa(job #1783546)
| Utilizator | Data | 19 octombrie 2016 09:23:32 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 45 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.53 kb |
#include <iostream>
#include <fstream>
using namespace std;
long long s[6000000],v[6000000];
int main()
{
ifstream f("ssm.in");
ofstream g("ssm.out");
int n,maxi=-100000000,poz1=1,poz2,s=0,poz3;
f>>n;
for(int i=1;i<=n;i++)
{
f>>v[i];
s+=v[i];
if(maxi<s)
{
maxi=s;
poz3=poz1;
poz2=i;
}
if(s<0)
{
s=v[i];
poz1=i;
}
}
g<<maxi<<" "<<poz3<<" "<<poz2;
return 0;
}
