Cod sursa(job #2392550)

Utilizator cristii2000cristiiPanaite Cristian cristii2000cristii Data 30 martie 2019 10:27:00
Problema Arbori de intervale Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.43 kb
#include <fstream>
#define z 100001
using namespace std;int arb[z*2],i,n,m,a,b,x;bool q;int main(){ifstream f("arbint.in");ofstream g("arbint.out");f>>n>>m;for(i=0;i<n;i++)f>>arb[i+n];for(i=n-1;i>0;i--)arb[i]=max(arb[i*2],arb[i*2+1]);for(;m;m--){f>>q;if(q){f>>a;a+=n-1;f>>arb[a];a/=2;for(;a;a/=2) arb[a]=max(arb[a*2],arb[a*2+1]);}else{f>>a>>b;a+=n-1;b+=n-1;x=0;for(;a<=b;){x=max(x,max(arb[a],arb[b]));b=(b-1)/2;a=(a+1)/2;}g<<x<<'\n';}}}