Cod sursa(job #228371)

Utilizator AndreiDDiaconeasa Andrei AndreiD Data 7 decembrie 2008 00:05:53
Problema Arbori indexati binar Scor 0
Compilator c Status done
Runda Arhiva educationala Marime 1.09 kb
#include <stdio.h>

int V[100110];
int N,M,i,j,s,ok,a,b,x;

int main()
{
    freopen("aib.in","r",stdin);
    freopen("aib.out","w",stdout); 
    scanf("%d %d", &N,&M);
    for (i=1;i<=N;++i)
          scanf("%d", V+i);
    while(--M)
    {
        scanf("%d %d", &x,&a);
        if (x==0)
            {
                scanf("%d", &b);
                V[a]=b;
        }
        else
        if (x==1)
        { 
            scanf("%d",&b);
            s=0;
            for (i=a;i<=b;++i)
                  s+=V[i];
            printf("%d\n", s);
        }
        else
        if (x==2)
        {
            
            ok=0;
            s=0;
            for (i=1;i<=N&&!ok;++i)
                 {
                        s+=V[i];
                        if (s==a)
                        {
                                ok=1;
                                break;
                            }
                    }
             if (ok) printf("%d\n",i);
                else printf("-1\n");
         }
    }
return 0;
}