Pagini recente » Cod sursa (job #2703559) | Cod sursa (job #2199865) | Cod sursa (job #885877) | Cod sursa (job #2070629) | Cod sursa (job #1322971)
#include<stdio.h>
#include<limits.h>
int main()
{
FILE *fin,*fout;
fin=fopen("ssm.in","r");
fout=fopen("ssm.out","w");
int n,st=1,fi;
fscanf(fin,"%d",&n);
int a[n];
for(int i=0;i<n;i++) fscanf(fin,"%d",&a[i]);
int sum=0,bestsum=-INT_MAX;
for(int i=0;i<n;i++)
{
sum+=a[i];
if(sum<0)
sum=0;
else if(sum>bestsum)
{
bestsum=sum;
fi=i+1;
}
}
sum=0;
bestsum=INT_MIN;
for(int i=n-1;i>=0;i--)
{
sum+=a[i];
if(sum<0) sum=0;
else if(sum>bestsum)
{
bestsum=sum;
st=i+1;
}
}
fprintf(fout,"%d %d %d",bestsum,st,fi);
}