1.7 KiB
1.7 KiB
id | challengeType | title | videoUrl | localeTitle |
---|---|---|---|---|
5900f4f31000cf542c510006 | 5 | Problem 391: Hopping Game | 问题391:跳跃游戏 |
Description
一个游戏由两个玩家玩。在游戏开始之前,选择数字n。计数器c从0开始。每转一圈,玩家选择一个从1到n(含)的数字,然后用该数字增加c。结果值c必须是S的成员。如果没有更多有效的移动,则玩家输掉。
例如:设n = 5.c从0开始。玩家1选择4,所以c变为0 + 4 = 4.玩家2选择5,所以c变为4 + 5 = 9.玩家1选择3,所以c变为9 + 3 = 12.等等。请注意,c必须始终属于S,并且每个玩家最多可以将c增加n。
设M(n)是第一个玩家在第一个回合强制获胜时可以选择的最高数字,如果没有这样的移动则M(n)= 0。例如,M(2)= 2,M(7)= 1且M(20)= 4。
给定Σ(M(n))3 = 8150,1≤n≤20。
找Σ(M(n))3表示1≤n≤1000。
Instructions
Tests
tests:
- text: <code>euler391()</code>应该返回61029882288。
testString: 'assert.strictEqual(euler391(), 61029882288, "<code>euler391()</code> should return 61029882288.");'
Challenge Seed
function euler391() {
// Good luck!
return true;
}
euler391();
Solution
// solution required