Pagini recente » Cod sursa (job #79296) | Cod sursa (job #1362678) | Cod sursa (job #449653) | Cod sursa (job #1655354) | Cod sursa (job #2451564)
#include <fstream>
#include <climits>
using namespace std;
ifstream in ("gradina3.in");
ofstream out ("gradina3.out");
int n,p,k;
int matrix[1001][1001],sume[1001][1001],max1=INT_MIN,nr=0;
int main()
{
in>>n>>p>>k;
for (int i=1;i<=p;++i)
{
int lin,col;
in>>lin>>col;
matrix[lin][col]=1;
}
for (int i=1;i<=n;++i)
for (int j=1;j<=n;++j)
sume[i][j]=sume[i][j-1]+sume[i-1][j]+matrix[i][j]-sume[i-1][j-1];
for (int i=1;i<=n-k+1;++i)
for (int j=1;j<=n-k+1;++j)
{
int s=sume[i-1][j-1]-sume[i+k-1][j-1]-sume[i-1][j+k-1]+sume[i+k-1][j+k-1];
if (s>max1)
{
nr=1;
max1=s;
}
else if (s==max1)
nr++;
}
out<<max1<<'\n'<<nr;
return 0;
}