CF69D Dot
题目描述
Anton 和 Dasha 喜欢在带格子的纸上玩各种游戏。到了高三,他们已经玩遍了所有这种类型的游戏,于是请程序员 Vova 想出一个新游戏。Vova 给他们设计了一个代号为“dot”的游戏,规则如下:
- 在带格子的纸上绘制了一个坐标系。一个点最初位于 $(x, y)$。
- 每一步可以将点沿着预先选定的向量之一移动。每个玩家在一局游戏中还可以使用一次对点关于直线 $y = x$ 的对称变换。
- Anton 和 Dasha 轮流行动,Anton 先手。
- 若某位玩家操作后点到原点的距离超过 $d$,则该玩家判负。
请你帮助判断,只要双方都采取最优策略,最后获胜的是谁?
输入格式
输入的第一行为四个整数 $x$、$y$、$n$、$d$,表示点的初始坐标、距离限制 $d$,以及向量的数量。$-200 \leq x, y \leq 200, 1 \leq d \leq 200, 1 \leq n \leq 20$。保证初始点到原点的距离小于 $d$。
后面 $n$ 行,每行包含两个非负整数 $x_i$ 和 $y_i$,表示第 $i$ 个向量的坐标。$0 \leq x_i, y_i \leq 200$。保证所有向量都非零且互不相同。
输出格式
如果 Anton 可以获胜(双方都采取最优策略),输出“Anton”;否则输出“Dasha”。
说明/提示
在第一个样例中,Anton 移动到向量 $(1,2)$ 后,Dasha 输了。
在第二个样例中,Dasha 第一步将点移到 $(2,3)$,Anton 只有一条路可以走——对称变换。Dasha 再次进行同样的对称变换,将点移回 $(2,3)$,Anton 输。
由 ChatGPT 5 翻译