{"trustable":true,"sections":[{"title":"","value":{"format":"HTML","content":"这是一个关于导航的特定棋盘游戏。\r\u003cbr\u003e\u003ccenter\u003e\u003cimg src\u003d\"CDN_BASE_URL/ae668fa667b9f9af8809832a171b635c?v\u003d1709773929\"\u003e\u003c/center\u003e\r\u003cbr\u003e以下是规则:\r\u003cbr\u003e你可以从南方(底部一行)任选一个港口开始航行,目标是以最短时间到达北方(顶部一行)的任意港口。\r\u003cbr\u003e\r\u003cbr\u003e你的船只可以向北(上移)、西(左移)或东(右移)前进,每次只能移动一个格子,但不能冲向陆地或障碍物。此外,倒退被认为是没用的(尽管有时并非如此),所以一旦你离开一个格子,就不能返回。\r\u003cbr\u003e\r\u003cbr\u003e向北移动只需花费一个单位时间,而水平移动(向西/向东)所花费的时间取决于在此移动之前连续的水平移动次数。这意味着如果在此移动之前已经连续进行了X次水平移动,那么下一次水平移动所花费的时间就是X + 1。\r\u003cbr\u003e\r\u003cbr\u003e在海中,有一些特殊物体。\r\u003cbr\u003e- 障碍物。你不能移动到这些格子。\r\u003cbr\u003e- 幸运之轮。在这个游戏中,幸运之轮看起来像一个奇怪的轮子。你必须奇数次遇到幸运之轮。\r\u003cbr\u003e- 祝福石。到达这种格子不需要花费时间。\r\u003cbr\u003e- 召唤风暴。到达这种格子所需时间是正常时间的两倍。"}},{"title":"输入","value":{"format":"HTML","content":"第一行有两个整数N和M。保证N和M均不超过1000。接下来是N行,每行包含M个描述格子的字符:\r\u003cbr\u003e\r\u003cbr\u003e- 在这N行中的第一行和第N行,\u0027H\u0027代表港口,\u0027.\u0027代表陆地。\r\u003cbr\u003e- 在其他行中,\u0027.\u0027、\u0027O\u0027、\u0027F\u0027、\u0027B\u0027和\u0027S\u0027分别代表空格、障碍物、幸运之轮、祝福石和召唤风暴。"}},{"title":"输出","value":{"format":"HTML","content":"如果存在解决方案,则输出一个整数,即所需的最短时间;否则输出\"No solution\"。"}},{"title":"示例","value":{"format":"HTML","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e5 11\r\n...H...H...\r\n.O.BF.FS.O.\r\nO.O.OOO.O.O\r\n.O...F...O.\r\n.....H.....\r\n\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e6\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e"}}]}