Cod sursa(job #2431139)

Utilizator bluestorm57Vasile T bluestorm57 Data 18 iunie 2019 12:03:07
Problema Arbori indexati binar Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.82 kb
#include <bits/stdc++.h>

using namespace std;

ifstream f("aib.in");
ofstream g("aib.out");

const int NMAX = 1e5 + 10;
int sum[NMAX],n,m;

int main(){
    int i,a,b,q,j;
    f >> n >> m;
    for(i = 1 ; i <= n ; i++){
        f >> a;
        sum[i] = sum[i-1] + a;
    }

    for(i = 1 ; i <= m ; i++){
        f >> q;
        if(q == 0){
            f >> a >> b;
            for(j = a ; j <= b ; j++)
                sum[j] += b;
        }else
            if(q == 1){
                f >> a >> b;
                g << sum[b] - sum[a-1] << "\n";
            }else{
                f >> a;
                for(j = 1 ; j <= n ; j++)
                    if(sum[j] == a){
                        g << j << "\n";
                        break;
                    }
            }
    }

    return 0;
}