Cod sursa(job #1038900)

Utilizator miu_mik93FMI - Paduraru Miruna miu_mik93 Data 22 noiembrie 2013 09:03:46
Problema Arbori de intervale Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.91 kb
#include <stdio.h>
#include <math.h>
#include <iostream>
#include <string>
#include <stdlib.h>
#include <assert.h>
#include <time.h>
#include <algorithm>
#include <vector>
#include <cstdio>
#include <cstring>
#include <fstream>
#include <queue>
#include<cstdlib>
using namespace std;
	
#define NMAX 100020



int maxim (int a, int b, int *v)
{
	int max = v[a];
	for (int i = a + 1; i <= b; i++)
	{
		if ( v[i] > max )
			max = v[i];
	}
	return max;
}

int main()
{
	FILE *f = fopen("arbint.in", "r");
	FILE *g = fopen("arbint.out", "w");

	int N, M, v[NMAX];
	fscanf(f, "%d %d", &N, &M);

	for (int i = 0; i < N; i++)
		fscanf(f, "%d", &v[i]);

	int a, b, cod;
	for (int i = 0; i < M; i++)
	{
		fscanf(f, "%d %d %d", &cod, &a, &b);
		if ( cod == 0 )
		{
			fprintf(g, "%d\n", maxim(a-1, b-1, v));
		}
		else
		{
			v[a-1] = b;
		}
	}


	fclose(f); fclose(g);
	return 0;
}