Cod sursa(job #374356)

Utilizator samuel91Asofronie Samuel samuel91 Data 16 decembrie 2009 20:26:21
Problema Arbori de intervale Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.81 kb
#include <stdio.h>
#include <fstream>
using namespace std;
 
#define in "arbint.in"
#define out "arbint.out"
#define dim 100001
 
int N, M;
int C[dim];
int maxim;

void Maxim(int st, int dr);

int main()
{
    int X, A, B;
    freopen(in,"r",stdin);
    freopen(out,"w",stdout);
     
    scanf("%d%d", &N, &M);
    for ( int i = 1; i <= N; i++ )
    {
       scanf("%d", &C[i]);
    }  
     
    for ( int i = 1; i <= M; i++ )
    {
        scanf("%d%d%d", &X, &A, &B);
        if ( X == 0 )
       {
             maxim = -1;
             Maxim(A,B);
             
             printf("%d\n", maxim);
       }
        else
        {
            C[A] = B;
        }
   }
}
 
void Maxim(int a, int b)
{
     for ( int i = a; i <= b; i++ )
         if ( maxim < C[i] ) maxim = C[i];
}