#include <bits/stdc++.h>
using namespace std;
int d[1111], dd[1111];
int a[555][555];
int sum[555][555];
int mx[555][555][2];
inline int rowsum(int r, int u, int v) {
  int ret = sum[r][v];
  if (u) ret -= sum[r][u - 1];
  return ret;
}
int main() {
  int n, m, r, i, j, k, maxv, cir, u, v, tmp, ans;
  long long cnt;
  scanf("%d%d%d", &n, &m, &r);
  memset(d, 0, sizeof(d));
  memset(dd, 0, sizeof(dd));
  for (i = 0; i <= r; i++) {
    for (j = 0; j <= r; j++)
      if (i * i + j * j > r * r) break;
    d[i] = j;
  }
  for (i = 0; i <= 2 * r; i++) {
    dd[i] = 0;
    for (k = 0; k <= i && k <= r; k++) {
      if (d[i - k]) dd[i] = max(dd[i], d[i - k] + d[k] - 1);
    }
  }
  for (i = 0; i < n; i++)
    for (j = 0; j < m; j++) scanf("%d", &a[i][j]);
  for (i = 0; i < n; i++) {
    for (sum[i][0] = a[i][0], j = 1; j < m; j++)
      sum[i][j] = sum[i][j - 1] + a[i][j];
  }
  ans = 0;
  cnt = 0;
  memset(mx, 0, sizeof(mx));
  for (j = r; j < m - r; j++) {
    for (i = r; i < n - r; i++) {
      cir = 0;
      for (k = 0; k <= r; k++) {
        cir += rowsum(i - k, j - d[k] + 1, j + d[k] - 1);
      }
      for (k = 1; k <= r; k++) {
        cir += rowsum(i + k, j - d[k] + 1, j + d[k] - 1);
      }
      maxv = tmp = 0;
      for (k = 0; i - k >= 0; k++) {
        if (j - dd[k] < 0) continue;
        u = mx[i - k][j - dd[k]][0];
        v = mx[i - k][j - dd[k]][1];
        if (u && u + cir > maxv) {
          maxv = u + cir;
          tmp = v;
        } else if (u + cir == maxv)
          tmp += v;
      }
      for (k = 1; i + k < n; k++) {
        if (i + k >= n) break;
        if (j - dd[k] < 0) continue;
        u = mx[i + k][j - dd[k]][0];
        v = mx[i + k][j - dd[k]][1];
        if (u && u + cir > maxv) {
          maxv = u + cir;
          tmp = v;
        } else if (u + cir == maxv)
          tmp += v;
      }
      if (maxv > ans) {
        ans = maxv;
        cnt = tmp;
      } else if (maxv == ans)
        cnt += tmp;
      if (mx[i][j][0] < cir) {
        mx[i][j][0] = cir;
        mx[i][j][1] = 1;
      } else if (mx[i][j][0] == cir)
        mx[i][j][1]++;
      mx[i][j + 1][0] = mx[i][j][0];
      mx[i][j + 1][1] = mx[i][j][1];
    }
  }
  printf("%d %I64d\n", ans, cnt);
  return 0;
}
