#USACO20DECBT3. 金币游戏(gold)
金币游戏(gold)
题目背景
原题为 P9957 [USACO20DEC] Stuck in a Rut B
题目描述
Gooby 正在和他的学生们在操场上玩游戏。由于 Gooby 会魔法,所以他把操场变得无穷大了。
操场可以看作是一个由正方形组成的无限大的二维方阵(其实就是方格图),每个方格中有一枚金币。Gooby 有 个学生 参与了这个游戏。他们初始时位于不同的方格中,一部分朝向北面,一部分朝向东面。
每过一分钟,每个学生会执行以下操作之一:
- 如果他当前所在的方格中的金币已经被其他同学拿走了,那么他就停下。
- 否则就拿走他当前所在方格中的金币,并向他朝向的方向移动一个方格。
注意,每个格子的金币只会被最早到达该格子的学生拿走,之后来的学生都无法拿。
如果多个学生在一次移动中同时移动到了同一个有金币的方格,那么 Gooby 会使用魔法,把一枚金币变成多枚,使得所有在那个时候到达该格子的所有同学都拿到一枚金币,并在下一分钟继续沿他们朝向的方向移动。
简单来说,如果有多个学生同时移动到同一个有金币的方格,那么他们会分别得到一枚金币,然后继续沿着自己的方向走到下一个格子。
请求出每个同学得到的金币数量。当然有些同学永远不会停下,从而得到无限多的金币。
输入格式
输入的第一行包含 。以下 行,每行描述一个学生的起始位置,包含一个字符 N(表示朝向北面) 或 E(表示朝向东面),以及两个非负整数 和 (,)表示方格的坐标。所有 坐标各不相同,所有 坐标各不相同。
为了使方向和坐标尽可能明确,如果一个学生位于方格 并向北移动,他会到达方格 。如果他向东移动,他会到达方格 。
输出格式
输出 行。输出的第 行包含输入中的第 个学生得到的金币数量。如果一个学生可以得到无限多的金币,则输出 Infinity。
输入输出样例 #1
输入 #1
6
E 3 5
N 5 3
E 4 6
E 10 4
N 11 2
N 8 1
输出 #1
5
3
Infinity
Infinity
2
5
说明/提示
测试点性质
- 测试点 中,所有坐标不超过 。
- 测试点 没有额外限制。