Cod sursa(job #3367850)
| Utilizator | Data | 11 octombrie 2026 13:24:01 | |
|---|---|---|---|
| Problema | Arbori de intervale | Scor | 50 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.56 kb |
#include <bits/stdc++.h>
using namespace std;
const int NMAX = 1e5;
int v[NMAX + 1];
int main() {
ifstream cin("arbint.in");
ofstream cout("arbint.out");
int n, q;
cin >> n >> q;
for(int i = 1; i <= n; i++) {
cin >> v[i];
}
for(int i = 1; i <= q; i++) {
int op, x, y;
cin >> op >> x >> y;
if(op == 1) {
v[x] = y;
} else {
int sol = 0;
for(int j = x; j <= y; j++) {
sol = max(sol, v[j]);
}
cout << sol << '\n';
}
}
}
