using System; using static System.Console; using System.Linq; using System.Collections.Generic; using System.Runtime.Intrinsics.Arm; class Program { static int NN => int.Parse(ReadLine()); static int[] NList => ReadLine().Split().Select(int.Parse).ToArray(); static string[] SList(long n) => Enumerable.Repeat(0, (int)n).Select(_ => ReadLine()).ToArray(); public static void Main() { Solve(); } static void Solve() { var c = NList; var (h, w) = (c[0], c[1]); var map = SList(h); var dp = new int[h, w]; for (var s = 1; s < h + w; ++s) { for (var i = 0; i < h; ++i) { var j = s - i; if (j < 0) break; if (j >= w) continue; var min = int.MaxValue; if (i > 0) min = Math.Min(min, dp[i - 1, j]); if (j > 0) min = Math.Min(min, dp[i, j - 1]); ++min; if (map[i][j] == 'k') min += i + j; dp[i, j] = min; } } WriteLine(dp[h - 1, w - 1]); } }