#P1309. Coconuts, Revisited
Coconuts, Revisited
题目描述
本·艾姆斯·威廉姆斯创作的短篇小说《椰子》于年月日发表在《星期六晚邮报》上。故事讲述了五个男人和一只猴子在一座岛上遭遇海难的经历。他们在第一个晚上收集了椰子。夜里,有一个人醒来,决定拿走他那份椰子。他把椰子分成了五堆,还剩下一个椰子,于是他把这个椰子给了猴子,然后藏起自己的那份,接着回去睡觉了。
不久,第二个人醒来,也做了同样的事情。他把椰子分成五堆后,同样剩下一个椰子,便把这个椰子给了猴子,然后藏起自己的那份,又回去睡觉了。第三个人、第四个人和第五个人都完全照着同样的步骤做了一遍。第二天早上,等他们都醒来后,把剩下的椰子又平均分成了五份,这次没有剩下椰子。
一个显而易见的问题是:“他们最初一共收集了多少个椰子呢?”答案有无数个,但其中最小的数是。不过这不是我们这里要解决的问题。
假设我们把这个问题反过来。如果我们知道收集到的椰子数量,那么在同样的过程能够发生的情况下,遭遇海难的最多人数(包括一只猴子)会是多少呢?
输入
输入将是一系列整数,每个整数代表一群遭遇海难的人(以及一只猴子)所收集的椰子数量。在这一系列整数之后会跟着一个负数。
输出
对于每一个椰子数量,确定能够参与上述过程的最多人数。按照下面“预期输出”中展示的格式显示结果。对于某些输入情况可能没有解决方案;如果是这样,就说明这一情况。
输入示例
25
30
3121
-1
输出示例
25 coconuts, 3 people and 1 monkey
30 coconuts, no solution
3121 coconuts, 5 people and 1 monkey
来源
1997年北美中北部地区竞赛