freeCodeCamp/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-260-stone-game.md

1.7 KiB
Raw Blame History

id challengeType videoUrl title
5900f4701000cf542c50ff83 5 问题260石头游戏

Description

一场比赛由三堆石头和两名球员组成。在轮到时,玩家从堆中移除一个或多个宝石。但是,如果她从多个桩中取石头,她必须从每个选定的桩中移除相同数量的石头。

换句话说玩家选择一些N> 0并从任何一个桩中移除N个石头;或任意两桩总共2N中的每一块N石;或者从三个桩中的每一个总共3N中的N个石头。拿最后一块石头的玩家赢了比赛。

获胜配置是第一个玩家可以强制获胜的配置。例如0,0,130,11,115,5,5是获胜配置因为第一个玩家可以立即移除所有宝石。

失败的配置是第二个玩家可以强制获胜的配置无论第一个玩家做什么。例如0,1,21,3,3正在失去配置任何合法移动都会为第二个玩家留下获胜配置。

考虑所有丢失的配置xiyizi其中xi≤yi≤zi≤100。我们可以验证Σxi + yi + zi= 173895。

求Σxi + yi + zi其中xiyizi在失去的配置范围内xi≤yi≤zi≤1000。

Instructions

Tests

tests:
  - text: <code>euler260()</code>应该返回167542057。
    testString: assert.strictEqual(euler260(), 167542057);

Challenge Seed

function euler260() {
  // Good luck!
  return true;
}

euler260();

Solution

// solution required

/section>