#P13292. [GCJ 2013 #1C] Pogo

    ID: 13109 远端评测题 3000ms 1024MiB 尝试: 0 已通过: 0 难度: 7 上传者: 标签>贪心2013Special Judge构造Google Code Jam

[GCJ 2013 #1C] Pogo

Description

你刚刚收到了有史以来最棒的礼物——一根弹跳杆(Pogo stick)。弹跳杆可以让你站在上面,从地面起跳。

这根弹跳杆非常特别:第一次跳跃会让你移动 11 个单位距离,第二次跳跃会移动 22 个单位距离,第三次跳跃会移动 33 个单位距离,依此类推。你每次只能选择四个方向中的一个跳跃:北(yy 增大)、南(yy 减小)、东(xx 增大)或西(xx 减小)。

现在你想在自家后院玩一个游戏,我们将后院抽象为无限大的平面。你一开始站在 (0,0)(0, 0),你想跳到 (X,Y)(X, Y) 这个点。

(X,Y)(X, Y) 保证不会是 (0,0)(0, 0),并且总是可以从起点到达。

请仔细阅读输出部分,因为小数据集和大数据集的输出要求并不相同。

Input Format

输入的第一行为测试用例数量 TT。接下来有 TT 行,每行包含两个用空格分隔的整数 XXYY,表示你要到达的目标点坐标。

Output Format

对于每个测试用例,输出一行 "Case #x: y",其中 xx 为测试用例编号(从 11 开始),yy 是一个字符串,表示每次跳跃的方向。例如,如果你依次向北、南、东、西跳跃,输出应为 NSEW

对于小数据集,只要每个测试用例中到达终点所用跳跃次数不超过 500500,你的输出就被认为是正确的。

对于大数据集,只有在使用最少跳跃次数到达终点时,输出才被认为是正确的。

如果存在多种正确方案,输出任意一种即可。

2
3 4
-3 4
Case #1: ENWSEN
Case #2: ENSWN

Hint

样例说明

对于第一个样例,如果这是大数据集,则该输出不被认为是正确答案,因为跳跃次数不是最少的。如果你输出 WNSEN,则对于大数据集来说是正确输出。

限制条件

小数据集(10 分,测试集 1 - 可见)

  • 1T501 \leqslant T \leqslant 50
  • 0X,Y1000 \leqslant |X|, |Y| \leqslant 100

大数据集(25 分,测试集 2 - 隐藏)

  • 1T1001 \leqslant T \leqslant 100
  • 0X,Y1060 \leqslant |X|, |Y| \leqslant 10^6

翻译由 ChatGPT-4.1 完成。