Cod sursa(job #1437872)
| Utilizator | Data | 18 mai 2015 19:00:22 | |
|---|---|---|---|
| Problema | Arbori indexati binar | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.66 kb |
#include <fstream>
using namespace std;
int main()
{ int v[1001], n,m , a, b, i, j, k, x, s, l, ok;
ifstream f("aib.in");
ofstream g("aib.out");
ok=0;
f>>n>>m;
for(i=1;i<=n;i++)
f>>v[i];
for(j=1;j<=m;j++)
{ f>>x;
s=0;
if(x==0)
{ f>>a>>b;
v[a]=v[a]+b;
}
else if(x==1)
{ f>>a>>b;
for(l=a;l<=b;l++)
s+=v[l];
g<<s<<'\n';
}
else if(x==2)
{ f>>a;
k=1;
while(s<a)
{ s+=v[k];
if(s==a)
{g<<k<<'\n';
ok=1;}
k++;
}
if(ok==0)
g<<"-1";
}
}
}
