Pagini recente » Cod sursa (job #2576060) | Cod sursa (job #1129345) | Cod sursa (job #1775626) | Cod sursa (job #1601662) | Cod sursa (job #2228677)
#include <iostream>
#include <fstream>
#include <limits.h>
#define Nmax 100001
using namespace std;
ifstream in("arbint.in");
ofstream out("arbint.out");
int N, M, C[Nmax];
int div_imp(int p, int q)
{
int mij, max1, max2;
if(p == q)
return C[p];
else
{
mij = (p + q) / 2;
max1 = div_imp(p, mij);
max2 = div_imp(mij + 1, q);
if(max1 > max2)
return max1;
else
return max2;
}
}
int main()
{
int i, a, b, o;
in >> N >> M;
for(i = 1; i <= N; i++)
in >> C[i];
for(i = 1; i <= M; i++)
{
in >> o >> a >> b;
if(o == 0)
out << div_imp(a, b) << endl;
else
C[a] = b;
}
return 0;
}