Cod sursa(job #801448)
Utilizator | Edi Pop edihackpack | Data | 24 octombrie 2012 13:30:43 |
---|---|---|---|
Problema | Arbori de intervale | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.55 kb |
#include <cstdio>
#include <climits>
int v[100000];
int main()
{
int n,m;
freopen("arbint.in","r",stdin);
scanf("%d%d",&n,&m);
for(int i =1; i<=n; i++)
scanf("%d",&v[i]);
for(int i =0; i<m; i++)
{
int x,a,b;
scanf("%d%d%d",&x,&a,&b);
if(!x)
{
int max = -INT_MAX;
for(int j = a; j<=b;j++)
if(v[j]>max)
max = v[j];
printf("%d\n",max);
}
else
v[a] = b;
}
return 0;
}