Cod sursa(job #145877)

Utilizator HoriaClementHoriaC HoriaClement Data 29 februarie 2008 17:17:01
Problema Arbori de intervale Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.94 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];   
}