#include <cstdio>
#include <algorithm>
const int dx[4] = { 0, 0, 1, -1 }, dy[4] = { -1, 1, 0, 0 };
int N, M, K, a[802][802], X, Y, qx[640001], qy[640001], dis[802][802], O = 1000000000;
int main()
{
	scanf("%d%d%d", &N, &M, &K);
	for (int i = 1; i <= N; i++)
	{
		static char I[802];
		scanf("%s", I + 1);
		for (int j = 1; j <= M; j++)
			if (I[j] != '#')
			{
				a[i][j] = 1;
				if (I[j] == 'S')
				{
					X = i;
					Y = j;
				}
			}
	}
	int H = 0, T = 1;
	qx[1] = X;
	qy[1] = Y;
	dis[X][Y] = 1;
	while (H < T)
	{
		H++;
		int ux = qx[H], uy = qy[H];
		for (int i = 0; i < 4; i++)
		{
			int vx = ux + dx[i], vy = uy + dy[i];
			if (a[vx][vy] && !dis[vx][vy])
			{
				T++;
				qx[T] = vx;
				qy[T] = vy;
				dis[vx][vy] = dis[ux][uy] + 1;
			}
		}
	}
	for (int i = 1; i <= N; i++)
		for (int j = 1; j <= M; j++)
			if (1 <= dis[i][j] && dis[i][j] <= K + 1)
				O = std::min(O, (std::min(std::min(i - 1, N - i), std::min(j - 1, M - j)) + K - 1) / K + 1);
	printf("%d\n", O);
}
