这是一个交互式问题。
考虑平面上的无限方格网。我们在网格上选择一个区域:一组网格方块。 我们定义方块 $a$ 和 $b$ 之间的区域路径为方块序列 $c_1, c_2, \dots, c_k$,其中 $c_1 = a$,$c_k = b$,所有方块都属于该区域,且对于所有 $1$ 到 $k-1$ 之间的 $i$,方块 $c_i$ 和 $c_{i+1}$ 共享一条公共边。该路径的长度为 $k$。
如果对于区域中每一对属于该区域的方块 $(x_1, y_1)$ 和 $(x_2, y_2)$,都存在一条长度为 $|x_1 - x_2| + |y_1 - y_2|$ 的区域路径,我们称该网格区域是凸的。
评测系统选择一个凸区域并在其中指定一个特殊方块,我们称之为中心方块。 然后,评测系统按如下方式扩展该区域:选取所有尚不属于该区域但与区域内某个方块有公共顶点的方块。将所有这些方块添加到区域中,并将这些添加的方块称为区域的边界。
保证该区域及其边界可以被一个与网格对齐的 $41 \times 41$ 的正方形完全覆盖。
你需要通过以下查询来求出该区域的面积。每个查询由一系列命令组成,命令包括 “n”、“s”、“w”、“e”,分别表示向北、南、西、东移动。
在程序开始前,评测系统会在每个边界方块上放置一个标记。然后,每个标记根据指定的程序移动。如果下一条命令使标记移出区域,则该命令对该标记无效。对于每个标记,评测系统会统计它移动到中心方块的次数。查询的结果是所有标记的这些次数之和。
交互
参赛程序必须通过按以下格式之一打印命令来与评测系统交互:
- “? s”,其中 $s$ 是一个非空字符串,包含不超过 $250$ 个字符 “n”、“s”、“w” 和 “e”,表示程序。对于此查询,评测系统将输出一个整数:所有标记移动到中心方块的次数之和。
- “! ans”,其中 $ans$ 是该区域的面积(整数)。打印此命令后,程序应立即终止。
样例
输入 1
1 1 8 4 3
输出 1
? e ? w ? ssssswww ? sssssee ? wewsss ! 29
说明
在每个测试中,区域和中心方块都是预先固定且不会改变的。 样例对应于下图: