Cod sursa(job #1673740)
| Utilizator | Data | 4 aprilie 2016 08:54:29 | |
|---|---|---|---|
| Problema | Arbori de intervale | Scor | 20 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.77 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream in("arbint.in");
ofstream out("arbint.out");
#define Nmax 100000
int n,m,a,b,c,v[Nmax],Max[Nmax];
int main(){
in>>n>>m;
for(int i=1;i<=n;i++)
in>>v[i];
for(int i=1;i<=m;i++){
in>>c>>a>>b;
for(int i=1;i<=n;i++)
Max[i]=v[i];
if(c==0){
int sortat=0,t;
do{
sortat=1;
for(int j=a;j<b;j++){
if(Max[j]>Max[j+1]){
t=Max[j],Max[j]=v[j+1],Max[j+1]=t,sortat=0;
}
}
}while(sortat==0);
out<<Max[b]<<'\n';
}
else if(c==1){
v[a]=b;
}
}
return 0;
}
