Pagini recente » Cod sursa (job #2411567) | Cod sursa (job #2425582) | Cod sursa (job #3253340) | Cod sursa (job #2327447) | Cod sursa (job #854593)
Cod sursa(job #854593)
#include <stdio.h>
using namespace std;
int n,m;
long v[110000];
long maxim(int a,int b)
{
long i,mx,aux;
if (b<a){
aux=a;
a=b;
b=aux;
}
mx=v[a];
for(i=a+1;i<=b;i++)
if (mx<v[i]) mx=v[i];
return mx;
}
void inversare(int a,int b)
{
v[a]=b;
}
int main()
{
int i,op,a,b;
FILE*f,*g;
f=fopen("arbori.in","r");
g=fopen("arbori.txt","w");
fscanf(f,"%d%d",&n,&m);
for(i=1;i<=n;i++)
fscanf(f,"%ld",&v[i]);
for(i=1;i<=m;i++)
{
fscanf(f,"%d",&op);
fscanf(f,"%d",&a);
fscanf(f,"%d",&b);
switch(op)
{
case 0: {fprintf(g,"%d\n",maxim(a,b)); break;}
case 1: {inversare(a,b); break;}
}
}
return 0;
}