Cod sursa(job #2143911)
| Utilizator | Data | 26 februarie 2018 13:12:23 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 45 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.53 kb |
#include <fstream>
using namespace std;
ifstream in("ssm.in");
ofstream out("ssm.out");
int n,v[100001],Min,smax,p,u,a,i;
int main()
{
in>>n;
Min=100000100;
smax=-100000100;
for(i=1;i<=n;i++) in>>v[i];
for(i=1;i<=n;i++)
{
v[i]+=v[i-1];
if(smax<v[i]-Min)
{
smax=v[i]-Min;
p=a+1;
u=i;
}
if(Min>v[i])
{
Min=v[i];
a=i;
}
}
out<<smax<<" "<<p<<" "<<u;
return 0;
}
