Cod sursa(job #911767)
Utilizator | Data | 11 martie 2013 20:56:07 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 5 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.6 kb |
#include <cstdio>
#define INFINIT (1<<30)
using namespace std;
int x,n,big,sf,lg,sum,p,maxim=-INFINIT,l;
int main()
{
freopen("ssm.in","r",stdin);
freopen("ssm.out","w",stdout);
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
scanf("%d",&x);
if(sum<0)
{
p=1;
sum=x;
}
else
{
sum+=x;
p++;
}
if(sum>maxim)
{
maxim=sum;
big=i;
sf=p;
}
}
printf("%d %d %d\n",maxim,sf-lg-1,(sf-lg-1)+sf-1);
return 0;
}