Cod sursa(job #1472500)

Utilizator dorumusuroiFMI - Doru Musuroi dorumusuroi Data 17 august 2015 11:14:52
Problema Arbori de intervale Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.73 kb
#include <cstdio>

using namespace std;
const char iname[] = "arbint.in";
const char oname[] = "arbint.out";
const int MAXN = 100005;

int A[MAXN],n,m;

void read(){
    scanf("%d %d\n", &n, &m);
    for(int i = 0; i < n; ++i)
        scanf("%d", A+i);
}
int getMax(int start, int end){
    int maxim = -1;
    for(int i = start; i <= end; i++)
        if(A[i] > maxim) maxim = A[i];
    return maxim;
}
void solve(){
    int c,a,b;
    for(int i = 0; i < m; ++i){
        scanf("%d %d %d", &c, &a, &b);
        if(c == 0) printf("%d\n", getMax(a-1,b-1));
        if(c == 1) A[a-1] = b;
    }
}
int main()
{
    freopen(iname, "r", stdin);
    freopen(oname, "w",stdout);
    read();
    solve();
    return 0;
}