Cod sursa(job #3123163)

Utilizator SorinBossuMarian Sorin SorinBossu Data 22 aprilie 2023 12:26:43
Problema Arbori de intervale Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.38 kb
#include <fstream>
using namespace std;int y[(int)1e6],i,n,m,a,b,x,q;int main(){ifstream f("arbint.in");ofstream g("arbint.out");f>>n>>m;for(;i<n;i++)f>>y[i+n];for(i=n-1;i;i--)y[i]=max(y[i*2],y[i*2+1]);for(;m--;){f>>q;if(q){f>>a;a+=n-1;f>>y[a];a/=2;for(;a;a/=2)y[a]=max(y[a*2],y[a*2+1]);}else{f>>a>>b;a+=n-1;b+=n-1;x=0;for(;a<=b;)x=max(x,max(y[a],y[b])),b=(b-1)/2,a=(a+1)/2;g<<x<<'\n';}}}