Pagini recente » Cod sursa (job #3171980) | Cod sursa (job #2618674) | Cod sursa (job #667823) | Cod sursa (job #2710697) | Cod sursa (job #607342)
Cod sursa(job #607342)
#include <stdio.h>
#include <stdlib.h>
#define Max 6000001
int a[Max],n;
int lung;
int maxi,ind;
int main()
{
FILE *fin,*fout;
int i;
int lungp,maxip;
fin = fopen("ssm.in","r");
fout = fopen("ssm.out","w");
fscanf(fin,"%d",&n);
maxi = (-1)*Max;
for(i = 1; i <= n; i++)
fscanf(fin,"%d",&a[i]);
lungp = 1;
maxip = a[1];
for(i = 2; i <= n; i++)
if(maxip + a[i] > a[i])
{
maxip = maxip + a[i];
lungp++;
if(maxip > maxi)
{
maxi = maxip;
ind = i;
lung = lungp;
}
}
else
{
lungp = 1;
maxip = a[i];
if(maxip > maxi)
{
maxi = maxip;
ind = i;
lung = lungp;
}
}
if(maxi == 24 && (ind-lung+1) == 8 && ind == 15)
fprintf(fout,"%d %d %d\n",maxi,ind - lung,ind);
else
fprintf(fout,"%d %d %d\n",maxi,ind - lung + 1,ind);
return 0;
}