Cod sursa(job #278217)
#include<iostream.h>
#include<fstream.h>
long m,n,v[100001];
fstream in("arbint.in",ios::in);
fstream out("arbint.out",ios::out);
void citire()
{
in>>n>>m;
for(long i=1;i<=n;i++)
in>>v[i];
}
void prelucrare_maxim(long a,long b)
{
long max=v[a];
for(long i=a+1;i<=b;i++)
if(max<v[i])
max=v[i];
out<<max<<"\n";
}
void prelucrare_schimb_val(long a,long b)
{
v[a]=b;
}
int main()
{
citire();
for(long i=1;i<=m;i++)
{
long a,b;
short opt;
in>>opt>>a>>b;
if(opt==0)
prelucrare_maxim(a,b);
else prelucrare_schimb_val(a,b);
}
in.close();
out.close();
return 0;
}