#P1078. Gizilch

    ID: 79 传统题 1000ms 256MiB 尝试: 1 已通过: 1 难度: 10 上传者: 标签>搜索记忆化搜索数论South Central USA 1998

Gizilch

题目描述

“Gizilch” 游戏的规则非常简单。首先,用无毒墨水给 100 颗葡萄标上 1 到 100 的数字。然后,随着裁判的一声“GIZILCH!”的呼喊,裁判用一个巨大的 Gizilcher 将葡萄射向空中。两名玩家的初始得分都是“1”,他们会竞相吃掉正在掉落(或很快就会掉落)的葡萄,同时将他们的得分乘以他们吃掉的葡萄上的数字。一分钟后,饥饿的松鼠被放出来吃掉剩下的葡萄,每个参赛者报告他的得分,即他吃掉的葡萄上的数字的乘积。非官方的获胜者是宣布最高得分的玩家。

然而,不可避免地,会出现争议,因此在争议解决之前,不会确定官方的获胜者。声称较低得分的玩家有权挑战对手的得分。声称较低得分的玩家被假定为说了实话,因为如果他要撒谎,他肯定会编造一个更大、更好的谎言。如果较高得分的玩家的得分无法通过挑战玩家未吃掉的葡萄来实现,则挑战有效。因此,如果挑战成功,声称较低得分的玩家获胜。

例如,如果一名玩家声称得了 343 分,而另一名玩家声称得了 49 分,那么很明显第一名玩家在撒谎。唯一得到 343 分的方法是吃掉标有 7 和 49 的葡萄,而唯一得到 49 分的方法是吃掉标有 49 的葡萄。由于两种得分都需要吃掉标有 49 的葡萄,因此声称 343 分的玩家被认为是在撒谎。

另一方面,如果一名玩家声称得了 162 分,而另一名玩家声称得了 81 分,那么两者都可能是实话(例如,一个吃掉标有 2、3 和 27 的葡萄,而另一个吃掉标有 81 的葡萄),因此挑战不会被支持。

不幸的是,任何愿意担任“Gizilch”游戏裁判的人都可能自己已经消费了太多葡萄(以液体形式),因此不能合理地期望他或她进行裁判所需的复杂计算。因此,需要你这位清醒的程序员提供一个软件解决方案。

输入

每行包含一对不相等的正整数,这些数字是“Gizilch”游戏中玩家声称的得分。

输出

每行输出一个数字,表示获胜的得分,假设得分较低的玩家总是会挑战结果。

输入数据 1

343 49 
3599 610 
62 36 

输出数据 1

49 
610 
62 

提示

在比赛开始时,对问题描述中注意到的模糊性进行了澄清(在比赛前几天发现)。决定“Gizilch”游戏获胜者的规则如下:

  1. 如果两名玩家都可能说的是实话,那么较高得分获胜。
  2. 如果得分较低的玩家不可能说的是实话,那么较高得分获胜。
  3. 如果上述两个条件都不成立,则较低得分获胜。

来源

美国中南部 1998