题目名称 | 903. 蜗牛的旅行 |
---|---|
输入输出 | snail.in/out |
难度等级 | ★ |
时间限制 | 1000 ms (1 s) |
内存限制 | 128 MiB |
测试数据 | 12 |
题目来源 | sywgz 于2012-07-12加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:6, 提交:11, 通过率:54.55% | ||||
mikumikumi | 100 | 0.012 s | 0.60 MiB | C++ |
hahaha | 100 | 0.013 s | 0.35 MiB | C++ |
HeSn | 100 | 0.013 s | 0.58 MiB | C++ |
cstdio | 100 | 0.015 s | 0.34 MiB | C++ |
八级大狂风 | 100 | 0.026 s | 0.44 MiB | C++ |
rewine | 100 | 0.029 s | 0.47 MiB | C++ |
hahaha | 83 | 0.009 s | 0.35 MiB | C++ |
mildark | 16 | 1.018 s | 0.37 MiB | C++ |
窝 | 0 | 0.003 s | 0.49 MiB | C++ |
八级大狂风 | 0 | 0.026 s | 0.44 MiB | C++ |
关于 蜗牛的旅行 的近10条评论(全部评论) | ||||
---|---|---|---|---|
连续三次看错题
| ||||
终止条件是“走到当前走过的格子”而非“不能再走”
|
描述
萨丽·斯内尔(Sally Snail,蜗牛)喜欢在 N x N 的棋盘上闲逛(1 < n < 120)。她总是从棋盘的左上角出发。棋盘上有空的格子(用“.”来表示)和 B 个路障(用“#”来表示)。下面是这种表示法的示例棋盘:
A B C D E F G H 1 S . . . . . # . 2 . . . . # . . . 3 . . . . . . . . 4 . . . . . . . . 5 . . . . . # . . 6 # . . . . . . . 7 . . . . . . . . 8 . . . . . . . .
一旦萨丽选定了一个方向,她就会一直走下去。如果她遇到棋盘边缘或者路障,她就停下来,并且转过 90 度。她不可能离开棋盘,或者走进路障当中。并且,萨丽从不跨过她已经经过的格子。当她再也不能走的时候,她就停止散步。
这里是上面的棋盘上的一次散步路线图示:
A B C D E F G H 1 S---------+ # . 2 . . . . # | . . 3 . . . . . | . . 4 . . . . . +---+ 5 . . . . . # . | 6 # . . . . . . | 7 +-----------+ | 8 +-------------+
萨丽向右走,再向下,向右,向下,然后向左,再向上,最后向右走。这时她遇到了一个她已经走过的格子,她就停下来了。但是,如果她在 F5 格遇到路障后选择另外一条路——向我们看来是左边的方向转弯,情况就不一样了。
你的任务是计算并输出,如果萨丽聪明地选择她的路线的话,她所能够经过的最多格子数。
输入的第一行包括 N ——棋盘的大小,和 B ——路障的数量(1 <= B <= 200)。接下来的 B 行包含着路障的位置信息。下面的样例输入对应着上面的示例棋盘。下面的输出文件表示问题的解答。注意,当 N 〉26 时,输入文件就不能表示 Z 列以后的路障了(这一点你不必在程序中做出判断)。
输出文件应该只由一行组成,即萨丽能够经过的最多格子数。
SAMPLE INPUT (file snail.in)
8 4 E2 A6 G1 F5