#include <bits/stdc++.h>
using namespace std;
int h, w, K, ans = 1 << 30, i, j, k, qx[805 * 805], qy[805 * 805], bg, ed,
             f[10][5] = {{-1, 0}, {1, 0}, {0, -1}, {0, 1}}, dis[805][805];
char s[805][805];
bool v[805][805];
int main() {
  scanf("%d%d%d", &h, &w, &K);
  for (i = 1; i <= h; ++i) scanf("%s", s[i] + 1);
  for (i = 1; i <= h; ++i) {
    for (j = 1; j <= w; ++j)
      if (s[i][j] == 'S') break;
    if (j <= w) break;
  }
  bg = ed = 1;
  qx[1] = i, qy[1] = j;
  v[i][j] = true;
  while (bg <= ed) {
    for (i = 0; i < 4; ++i) {
      j = qx[bg] + f[i][0], k = qy[bg] + f[i][1];
      if (j >= 1 && j <= h && k >= 1 && k <= w && s[j][k] != '#' && !v[j][k]) {
        v[j][k] = true;
        ++ed;
        qx[ed] = j, qy[ed] = k;
        dis[j][k] = dis[qx[bg]][qy[bg]] + 1;
      }
    }
    ++bg;
  }
  for (i = 1; i <= h; ++i)
    for (j = 1; j <= w; ++j)
      if (s[i][j] != '#') {
        int g = min(min(i - 1, j - 1), min(h - i, w - j));
        if (g == 0)
          ans = 1;
        else
          ans = min(ans, (g - 1) / K + 2);
      }
  printf("%d", ans);
  return 0;
}
