#include <bits/stdc++.h>
using namespace std;
const int dx[4] = {1, 0, -1, 0}, dy[4] = {0, 1, 0, -1};
int q[1010000][2], head, tail, d[810][810];
int n, m, k, sx, sy;
char p[810][810];
void ins(int x, int y, int cr) {
  if (d[x][y] <= cr || p[x][y] != '.') return;
  d[x][y] = cr;
  tail++;
  q[tail][0] = x, q[tail][1] = y;
}
int main() {
  int i, j, x, y;
  cin >> n >> m >> k;
  for (i = 1; i <= n; i++) {
    scanf("%s", p[i] + 1);
    for (j = 1; j <= m; j++) {
      if (p[i][j] == 'S') sx = i, sy = j, p[i][j] = '.';
      d[i][j] = 1e9;
    }
  }
  ins(sx, sy, 0);
  while (head < tail) {
    head++;
    x = q[head][0], y = q[head][1];
    ins(x + 1, y, d[x][y] + 1);
    ins(x, y + 1, d[x][y] + 1);
    ins(x - 1, y, d[x][y] + 1);
    ins(x, y - 1, d[x][y] + 1);
  }
  int res = 1e9;
  for (int i = 1; i <= n; i++)
    for (int j = 1; j <= m; j++) {
      if (d[i][j] <= k)
        res = min(res,
                  1 + (min(min(i - 1, n - i), min(j - 1, m - j)) + k - 1) / k);
    }
  cout << res << endl;
  return 0;
}
