Cod sursa(job #2204217)

Utilizator dorinm17Manea Dorin dorinm17 Data 14 mai 2018 23:55:38
Problema Arbori indexati binar Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 1.17 kb
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
    ios::sync_with_stdio(false);
    int m, n, i, j, x, c, d, k=1;
    bool pozk;
    ifstream f("aib.in");
    ofstream g("aib.out");
    f>>n>>m;
    int a[n+1], suma[n+1];
    for(i=1; i<=n; i++)
        f>>a[i];
    while(k<=n)
    {
        suma[k]=0;
        for(i=1; i<=k; i++)
            suma[k]+=a[i];
        k++;
    }
    for(i=1; i<=m; i++)
    {
        f>>x>>c;
        if(x==2)
        {
            pozk=true;
            for(j=1; j<=n; j++)
                if(suma[j]==c)
                {
                    g<<j<<endl;
                    pozk=false;
                    break;
                }
            if(pozk==true)
                g<<-1<<endl;
        }
        else
        {
            f>>d;
            if(x==0)
            {
                a[c]+=d;
                for(j=c; j<=n; j++)
                    suma[j]+=d;
            }
            else
                if(c!=1)
                    g<<suma[d]-suma[c-1]<<endl;
                else
                    g<<suma[d];
        }
    }
    f.close();
    g.close();
    return 0;
}