Pagini recente » Cod sursa (job #2392225) | Cod sursa (job #573963) | Cod sursa (job #2208713) | Cod sursa (job #43048) | Cod sursa (job #521523)
Cod sursa(job #521523)
#include<stdio.h>
int n,m,a;
long b,vec[100003];
void citire()
{scanf("%d%d",&n,&m);
for(int i=1;i<=n;i++)
scanf("%d",&vec[i]);
}
int arb(int i,int j,int nod)
{if(i==j)
return vec[i];
int m=(i+j)/2;
if(arb(i,m,nod*2)>arb(m+1,j,nod*2+1))
return arb(i,m,nod*2);
else
return arb(m+1,j,nod*2+1);
}
int main()
{freopen("arbint.in","r",stdin);
freopen("arbint.out","w",stdout);
citire();
int x;
for(int i=1;i<=m;i++)
{scanf("%d%d%d",&x,&a,&b);
if(x==1)
vec[a]=b;
else
printf("%d\n",arb(a,b,a));
}
return 0;
}