Cod sursa(job #269969)

Utilizator DrakeDemonSebestin Dragos DrakeDemon Data 3 martie 2009 17:15:21
Problema Buline Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include<stdio.h>
#define DIM 2000
int lng,l,smax,pinit,sum,poz,i,j,n;
int v[DIM],s[DIM];

int main(){
FILE *f = fopen("buline.in","r");
FILE *g = fopen("buline.out","w");
fscanf(f,"%d\n",&n);
for (i=1;i<=n;i++){
	fscanf(f,"%d%d",&v[i],&s[i]);
}
for(i=1;i<=n;i++){
	if(s[i] == 0)
	       v[i] = -v[i];
}
for(i=1;i<=2;i++){
	for(j=1;j<=n;j++){
		if(j == pinit)
			break;
		if(sum<0){
			poz = j;
			sum = v[j];
			l=1;
		}else{
			sum+=v[j];
			l++;
		}
		if(sum>smax){
			smax = sum;
			pinit = poz;
			lng = l;
		}
	}
}
fprintf(g,"%d %d %d",smax,pinit,lng);

fclose(f);
fclose(g);
return 0;
}