Pagini recente » Cod sursa (job #1263204) | Cod sursa (job #1581826) | Cod sursa (job #419567) | Cod sursa (job #536246) | Cod sursa (job #2503899)
//
// main.cpp
// alpatruleaproiect
//
// Created by Andu Andu on 03/12/2019.
// Copyright © 2019 Andu Andu. All rights reserved.
//
#include <iostream>
#include <fstream>
#define D 504
#define Q 75004
#define log_2 10
using namespace std;
ifstream f("plantatie.in");
ofstream g("plantatie.out");
int a[log_2][D][D];
int main()
{
int n,m,i,j,p2,k,c1,c2,c3,c4;
f>>n>>m;
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
f>>a[0][i][j];
for(p2=1;(1<<p2)<=n;p2++)
for(i=1;i<=n-(1<<p2)+1;i++)
for(j=1;j<=n-(1<<p2)+1;j++)
{
c1=a[p2-1][i][j];
c2=a[p2-1][i+(1<<(p2-1))][j];
c3=a[p2-1][i+(1<<(p2-1))][j+(1<<(p2-1))];
c4=a[p2-1][i][j+(1<<(p2-1))];
a[p2][i][j]=max(max(c1,c2),max(c3,c4));
k++;
}
for(int t=1;t<=m;t++)
{
f>>i>>j>>k;
p2=0;
while((1<<(p2+1))<=k)p2++;
g<<max(max(a[p2][i][j],a[p2][i+k-(1<<p2)][j]),max(a[p2][i+k-(1<<p2)][j+k-(1<<p2)],a[p2][i][j+k-(1<<p2)]))<<"\n";
}
}