--- id: 5900f5431000cf542c510055 title: 'Завдання 470: Супер Рамвок' challengeType: 5 forumTopicId: 302146 dashedName: problem-470-super-ramvok --- # --description-- Розглянему звичайну гру в Рамвок: Нехай $t$ відображає максимальну кількість ходів до кінця гри. Якщо $t = 0$, гра одразу закінчується. В іншому випадку, кожен хід $i$, гравець викидає гральний кубик. Після цього, якщо $i < гравець t$ може зупинити гру та отримати виграш рівний значенню поточного кубика, або скасувати свій хід та спробувати знов у наступному. Якщо $i = t$, хід не можна скасувати, виграш має бути прийнятий. Перед початком гри, $t$ обирається гравцем, який далі повинен передплатити $ct$ за сталу $c$. Якщо $c = 0$, $t$ може бути нескінченністю (тоді передплата буде дорівнювати 0). Нехай $R(d, c)$ буде очікуваним прибутком (тобто чистий прибуток) який гравець отримує за одну оптимально зіграну гру в Рамвок, використовуючи чесний $d$-бічний кубик із сталою ціною $c$. Наприклад, $R(4, 0.2) = 2.65$. Припустимо, що гравець має достатньо коштів для передплати будь-яких витрат. Тепер розглянему гру у Супер Рамвок: В грі Супер Рамвок, Рамвок грається кілька разів, але з невеликим доповненням. Після кожної гри гральний кубик змінюється. Зміна здійснюється таким чином: гральний кубик викидається один раз, і якщо на отриманому боці можна побачити його значення, це значення потрібно стерти. Якщо бік вже пустий, тоді треба повернути його початкове значення. Після зміни починається інша гра в Рамвок, під час якої гральний кубик викидається поки не з'явиться бік із позначенням. Гравець завжди знає які грані порожні. Гра в Супер Рамвок закінчується коли всі грані кубика залишаються порожніми. Нехай $S(d, c)$ буде очікуваним прибутком, який гравець отримує від оптимально зіграної гри в Супер Рамвок, використовуючи чесний $d$-бічний кубик із сталою ціною $c$. Наприклад, $S(6, 1) = 208.3$. Нехай $F(n) = \sum_{4 ≤ d ≤ n} \sum_{0 ≤ c ≤ n} S(d, c)$. Розрахуйте $F(20)$, округлене до найближчого цілого числа. # --hints-- `superRamvok()` повинна повернути `147668794`. ```js assert.strictEqual(superRamvok(), 147668794); ``` # --seed-- ## --seed-contents-- ```js function superRamvok() { return true; } superRamvok(); ``` # --solutions-- ```js // solution required ```