Pagini recente » Cod sursa (job #1221752) | Cod sursa (job #2130778) | Cod sursa (job #319271) | Cod sursa (job #2535138) | Cod sursa (job #325833)
Cod sursa(job #325833)
using namespace std;
#define dim 302
#include<stdio.h>
int mat[dim][dim], mat2[dim][dim];
int maxx(int x, int y)
{
if(x>y) return x-y;
else return y-x;
}
int maxx2(int x, int y)
{
if(x>y) return y;
else return x;
}
int main()
{
FILE *f=fopen("tir.in","r"), *g=fopen("tir.out","w");
int i,kk,c,m,n,j,bi=0,k,maxim=0,max,h,hh,l,ii=0,jj=0,nn,mm;
fscanf(f,"%d%d%d",&n,&m,&k);
for(kk=1;kk<=m/2+1;kk++)
{
++bi;
for(i=kk;i<=m-kk+1;i++)
mat[kk][i]=bi;
for(i=kk+1;i<=m-kk+1;i++)
mat[i][m-kk+1]=bi;
for(i=m-kk;i>=kk;i--)
mat[m-kk+1][i]=bi;
for(i=m-kk;i>=kk+1;i--)
mat[i][kk]=bi;
}
for(i=1;i<=k;i++)
{fscanf(f,"%d%d",&l,&c);
mat2[l][c]=1;}
nn=maxx(n,m);
mm=maxx2(n,m);
for(i=1;i<=nn+1;i++)
{max=0;
for(j=1;j<=nn+1;j++)
{max=0;
for(h=i;h<=mm+i;h++)
for(hh=j;hh<=mm+i;hh++)
if(mat2[h][hh]!=0)
max=max+mat[h-(n-m)+i][h-(n-m)+i];
if(max>maxim)
{maxim=max;ii=i;jj=j;}
}
}
fprintf(g,"%d\n%d %d\n",maxim,ii,jj);
fclose(f);
fclose(g);
return 0;}