Pagini recente » Cod sursa (job #2848496) | Cod sursa (job #594924) | Cod sursa (job #1779863) | Cod sursa (job #2450351) | Cod sursa (job #543535)
Cod sursa(job #543535)
#include <stdio.h>
#include <limits.h>
FILE *f=fopen("ssm.in","r");
FILE *g=fopen("ssm.out","w");
int n,v[600001];
int main(void){
register int i;
fscanf(f,"%d",&n);
for(i=1;i<=n;i++){
fscanf(f,"%d",&v[i]);
v[i]+=v[i-1];
}
fclose(f);
int u,p,smax=INT_MIN;
//v[0]=0;
for(i=n;i>=1;i--){
for(register int j=i-1;j>=0;j--){
if(v[i]-v[j]>smax){
smax=v[i]-v[j];
u=i;
p=j+1;
continue;
}
if(v[i]-v[j]==smax){
if(i-j+1<u-p+1){
smax=v[i]-v[j];
u=i;
p=j+1;
}
}
}
}
fprintf(g,"%d %d %d",smax,p,u);
fclose(f);
return 0;
}