Pagini recente » Cod sursa (job #497880) | Cod sursa (job #140370) | Cod sursa (job #2972486) | Cod sursa (job #1308732) | Cod sursa (job #1324573)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("plantatie.in");
ofstream fout("plantatie.out");
int n,m,DP[100][502][502];
///DP[k][i][j]=maximul din patratul cu coltul st sus i,j si latura k
int main()
{
fin>>n>>m;
int i,j,k,q;
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
{
fin>>DP[1][i][j];
}
for(k=2;k<=n;k++)
for(i=1;i<=n-k+1;i++)
for(j=1;j<=n-k+1;j++)
DP[k][i][j]=max(DP[k-1][i][j],max(DP[k-1][i][j+1],max(DP[k-1][i+1][j],DP[k-1][i+1][j+1])));
for(q=1;q<=m;q++)
{
fin>>i>>j>>k;
fout<<DP[k][i][j]<<"\n";
}
return 0;
}