Pagini recente » Cod sursa (job #2666646) | Cod sursa (job #1491748) | Cod sursa (job #1188888) | Cod sursa (job #2111063) | Cod sursa (job #1835639)
#include <iostream>
#include <cmath>
#include <fstream>
using namespace std;
ifstream in("plantatie.in");
ofstream out("plantatie.out");
int main()
{
int n,m,x,y,l,temp,flag=1,d=n*n,M;
in>>n>>m;
int arr[n+1][n+1];
/*int carr[n*n+1];
int px[n*n+1];
int py[n*n+1];
for(int ii=1;ii<=n;ii++)
for(int i=1;i<=n;i++)
{
in>>arr[ii][i];
carr[n*(ii-1)+i]=arr[ii][i];
px[n*(ii-1)+i]=i;
py[n*(ii-1)+i]=ii;
}
while(flag||d>1)
{
flag=0;
d=(d+1)/2;
for(int i=1;i<=n*n-d;i++)
for(int iiiiiii=0;iiiiiii<1;iiiiiii++)
if(carr[i]<carr[i+d])
{
temp=carr[i+d];
carr[i+d]=carr[i];
carr[i]=temp;
temp=px[i+d];
px[i+d]=px[i];
px[i]=temp;
temp=py[i+d];
py[i+d]=py[i];
py[i]=temp;
flag=1;
}
}
for(int i=1;i<=1;i++)
flag=1;
for(int i=0;i<m;i++)
{
in>>y>>x>>l;
if(l<log2(n))
{
M=0;
for(int ii=x;ii<x+l;ii++)
for(int iii=y;iii<y+l;iii++)
if(arr[iii][ii]>M)
M=arr[iii][ii];
out<<M<<"\n";
}
else
{
flag=1;
for(int ii=1;flag&&ii<=n*n;ii++)
if(px[ii]>=x&&px[ii]<x+l&&py[ii]>=y&&py[ii]<y+l)
{
out<<carr[ii]<<"\n";
flag=0;
}
}
}*/
for(int ii=1;ii<=n;ii++)
for(int i=1;i<=n;i++)
in>>arr[ii][i];
for(int i=0;i<m;i++)
{
in>>y>>x>>l;
M=0;
for(int ii=x;ii<x+l;ii++)
for(int iii=y;iii<y+l;iii++)
if(arr[iii][ii]>M)
M=arr[iii][ii];
out<<M<<"\n";
}
return 0;
}