#include <cstdio>
#include <cstring>
#include <algorithm>
#define ll long long
using namespace std;
int N,M,R,a[505][505],r[505],rr[1005],s[505][505],f[505][505],g[505][505];
ll h[505][505];
void renew(int&x,ll&y,int a,int b) {if (a>x) x=a,y=b; else if (a==x) y+=b;}
void init()
{
scanf("%d%d%d",&N,&M,&R);
for (int i=1; i<=N; i++)
for (int j=1; j<=M; j++) scanf("%d",&a[i][j]),s[i][j]=s[i][j-1]+a[i][j];
}
void doit()
{
for (int i=0,j=R; i<=R; r[i++]=j)
for (;i*i+j*j>R*R; j--);
for (int i=0; i<=R+R; i++)
for (int j=max(i-R,0); j<=i&&j<=R; j++) rr[i]=max(rr[i],r[j]+r[i-j]+1);
memset(g,192,sizeof(g));
for (int i=R+1; i+R<=N; i++)
for (int j=R+1; j+R<=M; j++)
{
f[i][j]=s[i][j+R]-s[i][j-R-1];
for (int k=1; k<=R; k++) f[i][j]+=s[i+k][j+r[k]]-s[i+k][j-r[k]-1]+s[i-k][j+r[k]]-s[i-k][j-r[k]-1];
g[i][j]=g[i][j-1],h[i][j]=h[i][j-1],renew(g[i][j],h[i][j],f[i][j],1);
}
int ans1=0; ll ans2=0;
for (int i=R+1; i+R<=N; i++)
for (int j=R+1; j+R<=M; j++)
for (int k=R+1,p; k<=i+R+R&&k<=N; k++) if (i-k>R+R)
{
renew(ans1,ans2,f[i][j]+g[k][M-R],h[k][M-R]);
}
else
{
p=j-rr[i>k?i-k:k-i];
if (p>R) renew(ans1,ans2,f[i][j]+g[k][p],h[k][p]);
}
printf("%d %I64d\n",ans1,ans2);
}
int main()
{
init();
doit();
return 0;
}