【发布时间】:2014-04-13 02:05:07
【问题描述】:
对于千篇一律的问题是否有封闭形式的解决方案?作为参考,这是:google page
*更新为包含问题陈述
问题
在这个问题中,你从 0 个 cookie 开始。通过单击一个巨大的 cookie,您以每秒 2 个 cookie 的速度获得 cookie。只要你有至少 C 个饼干,你就可以买一个饼干农场。每次你购买一个 cookie 农场,它会花费你 C cookie,并且每秒给你额外的 F cookie。
一旦你有 X 块没有花在农场上的 cookie,你就赢了!弄清楚如果您使用最佳策略,您需要多长时间才能获胜。
例子
假设 C=500.0、F=4.0 和 X=2000.0。以下是最佳策略的实施方式:
您从 0 个 cookie 开始,但每秒产生 2 个 cookie。 250 秒后,您将拥有 C=500 饼干,并且可以购买每秒生产 F=4 饼干的农场。 购买农场后,您有 0 个 cookie,您的 cookie 总产量为每秒 6 个 cookie。 下一个农场将花费 500 个饼干,您可以在大约 83.3333333 秒后购买。 购买第二个农场后,您有 0 个 cookie,您的 cookie 总产量为每秒 10 个 cookie。 另一个农场将花费 500 块饼干,您可以在 50 秒后购买。 购买第三个农场后,您有 0 个 cookie,您的 cookie 总产量为每秒 14 个 cookie。 另一个农场需要 500 个 cookie,但实际上不买它是有意义的:相反,您可以等到有 X=2000 个 cookie,这大约需要 142.8571429 秒。
总时间:250 + 83.3333333 + 50 + 142.8571429 = 526.1904762 秒。
请注意,您会连续获得 cookie:因此游戏开始后 0.1 秒您将获得 0.2 个 cookie,游戏开始后 π 秒您将获得 2π cookie。
【问题讨论】:
标签: algorithm google-code cookiecutter