Cod sursa(job #36035)

Utilizator swift90Ionut Bogdanescu swift90 Data 22 martie 2007 21:10:12
Problema Secventa 2 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include<stdio.h>
int nr[50001];
long long s1[50001],s2[50001],max,s;
int main(){
	FILE*in=fopen("secv.in","r");
	FILE*out=fopen("secv.out","w");
	int n,k,i,p1,p2;
	fscanf(in,"%d %d",&n,&k);
	for(i=0;i<n;i++)
		fscanf(in,"%d",&nr[i]);
	
	p1=0;
	p2=n-1;
	
	s1[0]=nr[0];
	for(i=1;i<n;i++)
		s1[i]=s1[i-1]+nr[i];
	
	s2[n-1]=nr[n-1];
	for(i=n-2;i>0;i--)
		s2[i]=s2[i+1]+nr[i];
	
	max=s1[0];
	for(i=0;i<n;i++){
		if(s1[i]>max){
			max=s1[i];
			p2=i;
		}
	}
	
	max=s2[0];
	for(i=0;i<n;i++){
		if(s2[i]>max){
			max=s2[i];
			p1=i;
		}
	}
	
	for(i=p1;i<=p2;i++)
		s=s+nr[i];
	
	fprintf(out,"%d %d %d\n",p1+1,p2+1,s);
	
	
	
	return 0;
}