Cod sursa(job #278139)
Utilizator | Data | 12 martie 2009 09:38:39 | |
---|---|---|---|
Problema | Arbori de intervale | Scor | 40 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.86 kb |
#include<fstream.h>
long m,n,v[100001];
ifstream f("arbint.in");
ofstream g("arbint.out");
void citire()
{
f>>n>>m;
for(long i=1;i<=n;i++)
f>>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];
g<<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;
f>>opt>>a>>b;
if(opt==0)
prelucrare_maxim(a,b);
else prelucrare_schimb_val(a,b);
}
f.close();
g.close();
return 0;
}