ã‚ã‚‹æœã€ã‚ãªãŸãŒç›®è¦šã‚ã‚‹ã¨ã€ãã“ã¯ãƒãƒã らã‘ã®è¿·å®®ã®ä¸ã ã£ãŸã€‚
ãªãœè‡ªåˆ†ãŒã“ã‚“ãªè¦‹çŸ¥ã‚‰ã¬å ´æ‰€ã«ã„ã‚‹ã®ã‹ã¯ã‚ã‹ã‚‰ãªã„。ã“ã®å ´ã§ã˜ã£ã¨åŠ©ã‘ã‚’å¾…ã¤ã¨ã„ã†é¸æŠžè‚¢ã‚‚ ã‚ã‚‹ã«ã¯ã‚ã‚‹ãŒã€ã“ã†ã„ã£ãŸè¿·å®®ã®ä¸ã«é•·å±…ã—ã¦ã„ã‚‹ã¨ã€ã„ã¤ã‹ã¯å¿…ãšçªé¢¨ãŒå¹ã„ã¦ãã¦å¹ã飛ã°ã• ã‚Œã¦ã—ã¾ã†ã“ã¨ã‚’ã€ã‚ãªãŸã¯çµŒé¨“上知ã£ã¦ã„ãŸã€‚ã—ã‹ã—ã€çªé¢¨ãŒå¹ã„ã¦ãã‚‹ã¾ã§ã®æ™‚é–“ã¯åˆ¤æ–ã®ã—よ ã†ãŒãªã„。ãã“ã§ã‚ãªãŸã¯ã€è¿·å®®ã‹ã‚‰è„±å‡ºã™ã‚‹ã¾ã§ã«å¿…è¦ãªç§»å‹•å›žæ•°ã®æœŸå¾…値ãŒæœ€å°ã«ãªã‚‹ã‚ˆã†ã«è¡Œ å‹•ã™ã‚‹ã®ãŒæœ€å–„ã®æˆ¦ç•¥ã ã¨è€ƒãˆãŸã€‚
足元ã«è½ã¡ã¦ã„ãŸæ£ä½“ä¸æ˜Žã®å·»ç‰©ã‚’拾ã£ã¦ãŸã‚ã—ã«èªã‚“ã§ã¿ãŸã¨ã“ã‚ã€å¶ç„¶ã«ã‚‚è¿·å®®ã®å…¨ä½“マップを 知覚ã™ã‚‹ã“ã¨ãŒã§ããŸã€‚ã•ã‚‰ã«ã€ãŸã¾ãŸã¾æŒã£ã¦ã„ãŸè‰ã‚’飲むã“ã¨ã§ã€ã™ã¹ã¦ã®ãƒ¯ãƒŠã®ä½ç½®ã‚‚知る㓠ã¨ãŒã§ããŸã€‚ã©ã†ã‚„らã“ã®è¿·å®®ã«ã¯ã€å±é™ºãªãƒ¢ãƒ³ã‚¹ã‚¿ãƒ¼ã‚„ãƒãƒä»¥å¤–ã®ãƒ¯ãƒŠã¯å˜åœ¨ã—ãªã„らã—ã„。
ã“ã®è¿·å®®ã¯ã€ã„ãã¤ã‹ã®ç¨®é¡žã®ã‚¿ã‚¤ãƒ«ãŒé•·æ–¹å½¢ã«ä¸¦ã‚“ã 形をã—ã¦ãŠã‚Šã€ãŸã¨ãˆã°ä»¥ä¸‹ã®ã‚ˆã†ã«ã‚ら゠ã•ã‚Œã‚‹ã€‚
######## #..##g.# #*#.*#.# #......# #*s#*.*# ########
「.ã€ï¼šåºŠã€‚ã“ã®ä¸Šãªã‚‰è‡ªç”±ã«æ©ã回るã“ã¨ãŒã§ãる。
「#ã€ï¼šå£ã€‚ã‚ãªãŸã¯å£ã®ä¸ã«å…¥ã‚‹ã“ã¨ã¯ã§ããªã„。
「sã€ï¼šã‚ãªãŸã®æœ€åˆã®ä½ç½®ã€‚ã“ã®ã‚¿ã‚¤ãƒ«ã®ä¸‹ã¯åºŠã«ãªã£ã¦ã„る。
「gã€ï¼šéšŽæ®µã€‚ã“ã®ã‚¿ã‚¤ãƒ«ã®ä¸Šã«ä¹—ã‚Œã°ã€è¿·å®®ã‚’脱出ã—ãŸã“ã¨ã«ãªã‚‹ã€‚
「*ã€ï¼šãƒãƒã€‚ã“ã®ã‚¿ã‚¤ãƒ«ã®ä¸Šã«ä¹—ã‚‹ã¨ã€ã„ãšã‚Œã‹ã®åºŠã®ä¸Šï¼ˆéšŽæ®µã€ãƒãƒã®ã‚¿ã‚¤ãƒ«ã¯é™¤ã)ã«ãƒ©ãƒ³ãƒ€ãƒ ã«é£›ã°ã•ã‚Œã‚‹ã€‚ãã‚Œãžã‚Œã®åºŠã«é£›ã°ã•ã‚Œã‚‹ç¢ºçŽ‡ã¯ã™ã¹ã¦ç‰ã—ã„。
タイルã®ç¨®é¡žã¯ã€ã“ã®ï¼•ã¤ã®ã„ãšã‚Œã‹ã§ã‚る。
ã‚ãªãŸã¯ã€ç¾åœ¨ä¹—ã£ã¦ã„るタイルã‹ã‚‰éš£ã‚Šåˆã£ãŸã‚¿ã‚¤ãƒ«ã¸ã€ä¸Šä¸‹å·¦å³ã„ãšã‚Œã‹ã®æ–¹å‘ã«ï¼‘マスãšã¤ç§» å‹•ã™ã‚‹ã“ã¨ãŒã§ãる。ãŸã ã—ã€ãƒŠãƒŠãƒ¡ã«ç§»å‹•ã™ã‚‹ã“ã¨ã¯ã§ããªã„。
è¿·å®®ã®ãƒžãƒƒãƒ—ãŒä¸Žãˆã‚‰ã‚ŒãŸã¨ãã€æœ€å–„ã®æˆ¦ç•¥ã‚’ã¨ã£ãŸå ´åˆã«è¿·å®®ã‹ã‚‰è„±å‡ºã™ã‚‹ã¾ã§ã«å¿…è¦ãªç§»å‹•å›žæ•° ã®æœŸå¾…値を求ã‚よ。ãƒãƒã§é£›ã°ã•ã‚Œã‚‹ã®ã¯ç§»å‹•å›žæ•°ã«ã¯å«ã‚ãªã„。
W H
c11 c12 ... c1w
c21 c22 ... c2w
:: :
ch1 ch2 ... ccw
入力ã®ï¼‘行目ã«ã¯ã€æ•´æ•°W(3 ≤ W ≤ 500)ã¨æ•´æ•°H(3 ≤ H ≤ 500)ãŒã€ã“ã®é †ã«ç©ºç™½åŒºåˆ‡ã‚Šã§æ›¸ã‹ã‚Œã¦ã„る。整数W ã¯è¿·å®®ã®æ¨ªå¹…ã‚’ã€æ•´æ•°H ã¯è¿·å®®ã®ç¸¦å¹…ã‚’ã‚らã‚ã™ã€‚
続ãH è¡Œã«ã¯ã€è¿·å®®ã®ãƒžãƒƒãƒ—ã‚’ã‚らã‚ã™W 個ã®æ–‡å—ãŒæ›¸ã‹ã‚Œã¦ã„る(空白区切りã§ã¯ãªã„)。ã“ã®éƒ¨åˆ†ã®å½¢å¼ã¯ã€å…ˆã«æŒ™ã’ãŸä¾‹ã®ã¨ãŠã‚Šã§ã‚る。ãªãŠã€ãƒ‡ãƒ¼ã‚¿ä¸ã«ã€Œsã€ã¨ã€Œgã€ã¯ã€ãã‚Œãžã‚Œã¡ã‚‡ã†ã©ï¼‘回ãšã¤å‡ºç¾ã™ã‚‹ã€‚ã¾ãŸã€è¿·å®®ã®å‘¨å›²ï¼‘マスã¯ã€å¿…ãšå£ã§å›²ã¾ã‚Œã¦ã„る。
ãªãŠã€ä¸Žãˆã‚‰ã‚Œã‚‹è¿·å®®ã§ã¯ã€ã©ã®ã‚ˆã†ã«ç§»å‹•ã—ã€ãƒãƒã§ã©ã®ã‚ˆã†ã«é£›ã°ã•ã‚ŒãŸã¨ã—ã¦ã‚‚ã€ã€Œãƒãƒã§é£› ã°ã•ã‚Œã‚‹åºŠã‚’ä»»æ„ã«è¨å®šã§ããŸã¨ã—ã¦ã‚‚脱出ä¸å¯èƒ½ãªçŠ¶æ…‹ã€ã«é™¥ã‚‹ã“ã¨ã¯ãªã„ã¨ä»®å®šã—ã¦ã‚ˆã„。
最善ã®æˆ¦ç•¥ã‚’ã¨ã£ãŸã¨ãã«ã€è„±å‡ºã¾ã§ã«ã‹ã‹ã‚‹ç§»å‹•å›žæ•°ã®æœŸå¾…値を出力ã›ã‚ˆã€‚出力ã¯èª¤å·®ã‚’å«ã‚“ã§ã„ ã¦ã‚‚よã„ãŒã€çœŸã®å€¤ã¨ã®ç›¸å¯¾èª¤å·®ãŒ10-9 未満ã§ãªã‘ã‚Œã°ãªã‚‰ãªã„。
8 6 ######## #..##g.# #*#.*#.# #......# #*s#*.*# ########
5.857142857143
21 11 ##################### #*#*.*.*.*.*.*.*.*#*# #*#...............#*# #*#.#.#.#.#.#.#.#.#*# ##.#.#.#.#.#.#.#.#.## #...................# ##.#.#.#.#.#.#.#.#.## #s#.#.#.#.#.#.#.#.#g# #...................# #...................# #####################
20.000000000000
9 8 ######### #...#*.*# #.*.#...# #...#*.*# ######### #.s....g# #.*#.*..# #########
5.000000000000