#include <bits/stdc++.h>
using namespace std;
const int N = 500 + 7;
const int M = 5;
const int inf = 777777777;
const long long base = 1e18;
const double pi = acos(-1);
const double ep = 1e-9;
string s[N];
int n, m, k;
int dp[N][N];
bool isStar(int i, int j) {
  if (i >= 1 && j >= 1 && i + 1 < n && j + 1 < m) {
    if (s[i][j] == '1' && s[i - 1][j] == '1' && s[i][j + 1] == '1' &&
        s[i][j - 1] == '1' && s[i + 1][j] == '1')
      return true;
  }
  return false;
}
int get(int i, int j, int u, int v) {
  i++;
  j++;
  u--;
  v--;
  if (i > u) return 0;
  if (j > v) return 0;
  return dp[u][v] - dp[u][j - 1] - dp[i - 1][v] + dp[i - 1][j - 1];
}
int main() {
  cin >> n >> m >> k;
  for (int i = (int)0; i < (int)n; i++) cin >> s[i];
  for (int i = (int)0; i < (int)n; i++) {
    for (int j = (int)0; j < (int)m; j++) {
      dp[i + 1][j + 1] = dp[i + 1][j] + dp[i][j + 1] - dp[i][j];
      dp[i + 1][j + 1] += isStar(i, j);
    }
  }
  long long ans = 0;
  for (int i = (int)1; i < (int)n + 1; i++) {
    for (int j = (int)1; j < (int)m + 1; j++) {
      int u = j;
      for (int t = (int)i; t < (int)n + 1; t++) {
        while (u <= m && get(i, j, t, u) < k) u++;
        while (u > j && get(i, j, t, u - 1) >= k) u--;
        if (u <= m && get(i, j, t, u) >= k) {
          ans += m - u + 1;
        }
      }
    }
  }
  cout << ans;
}
