Files
freeCodeCamp/curriculum/challenges/japanese/10-coding-interview-prep/project-euler/problem-115-counting-block-combinations-ii.md
2022-01-20 20:30:18 +01:00

1.4 KiB

id, title, challengeType, forumTopicId, dashedName
id title challengeType forumTopicId dashedName
5900f3df1000cf542c50fef1 問題 115: ブロックの組み合わせを数え上げる (2) 5 301741 problem-115-counting-block-combinations-ii

--description--

長さ n 単位の 1 列に、長さ m 単位以上の赤ブロックが置かれています。2 つの赤ブロック (長さが異なっていても良い) がある場合、それらは少なくとも 1 つの黒マスで区切られています。

列を埋める方法が何通りあるかを、fill-count 関数 F(m, n) で表すことにします。

例えば、F(3, 29) = 673135, F(3, 30) = 1089155 です。

したがって、m = 3 のとき、fill-count 関数が初めて 100 万を超える n の最小値は 30 です。

同様に、m = 10 のときに F(10, 56) = 880711 および F(10, 57) = 1148904 であることが分かります。したがって、fill-count 関数が初めて100 万を超える n の最小値は 57 です。

m = 50のとき、fill-count 関数が初めて 100 万を超える n の最小値を見つけなさい。

注: これは、問題 114 をより難しくした問題です。

--hints--

countingBlockTwo()168 を返す必要があります。

assert.strictEqual(countingBlockTwo(), 168);

--seed--

--seed-contents--

function countingBlockTwo() {

  return true;
}

countingBlockTwo();

--solutions--

// solution required