Pagini recente » Cod sursa (job #1349577) | Cod sursa (job #1367846) | Cod sursa (job #2806837) | Cod sursa (job #2610852) | Cod sursa (job #2837391)
#include <fstream>
using namespace std;
ifstream fin ("plantatie.in");
ofstream fout("plantatie.out");
int n,m,L,k,l,i,j,x,y,p,a[11][502][502],V[502];
int main()
{
fin>>n>>m;
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
fin>>a[0][i][j];
}
k=0;
for(l=1;k<=n;l++)
{
k=(1<<l);
for(x=1;x<=n-k+1;x++)
{
for(y=1;y<=n-k+1;y++)
{
i=x+k/2;
j=y+k/2;
a[l][x][y]=max(max(a[l-1][x][y],a[l-1][i][y]), max(a[l-1][x][j],a[l-1][i][j]));
}
}
}
for(i=2;i<=n;i++)
V[i]=1+V[i/2];
while(m>0)
{
fin>>x>>y>>L;
l=V[L];
k=(1<<l);
i=x+L-k;
j=y+L-k;
fout<<max(max(a[l][x][y], a[l][x][j]), max(a[l][i][y], a[l][i][j])) << "\n";
m--;
}
return 0;
}