Cod sursa(job #287989)

Utilizator stanesealexStanese Alex stanesealex Data 25 martie 2009 13:59:42
Problema Arbori indexati binar Scor 10
Compilator c Status done
Runda Arhiva educationala Marime 0.81 kb
#include<stdio.h>
int main()
{
int n,m,i,x[1000],c,a,b,j,s,t;
FILE *f=fopen("aib.in","r");
FILE *g=fopen("aib.out","w");
fscanf(f,"%d %d",&n,&m);
for (i=1;i<=n;i++)
    fscanf(f,"%d ",&x[i]);
for (i=1;i<=m;i++)
     {
     fscanf(f,"%d ",&c);
     if (c==0)
	 {
	 fscanf(f,"%d %d",&a,&b);
	 x[a]=x[a]+b;
	 }
     if (c==1)
	 {
	 fscanf(f,"%d %d",&a,&b);
	 s=0;
	 for (j=a;j<=b;j++)
	 s+=x[j];
	 fprintf(g,"%d",s);
	 fprintf(g,"\n");
	 }
     if (c==2)
	 {
	 t=1;
	 j=1;
	 s=0;
	 fscanf(f,"%d",&a);
	 while (t==1)
	      {
	      s=s+x[j];
	      j++;
	      if(s==a)
		   {
		   fprintf(g,"%d",j-1);
		   fprintf(g,"\n");
		   t=0;
		   }
	      if(s>a)
		   {
		   fprintf(g,"%d",-1);
		   fprintf(g,"\n");
		   t=0;
		   }
	      }
	 }
     }
fclose(f);
fclose(g);
return 0;
}