freeCodeCamp/curriculum/challenges/russian/08-coding-interview-prep/project-euler/problem-109-darts.russian.md

4.0 KiB
Raw Blame History

id challengeType title videoUrl localeTitle
5900f3db1000cf542c50feec 5 Problem 109: Darts Задача 109: Дартс

Description

В игре дартс игрок бросает три дротика на целевую доску, которая разделена на двадцать одинаковых размеров, пронумерованных от одного до двадцати.

Оценка дротика определяется количеством области, в которую попадает дротик. Дарт, вылетающий за пределы красного / зеленого внешнего кольца, имеет нулевое значение. Черные и кремовые области внутри этого кольца представляют собой одиночные баллы. Тем не менее, красное / зеленое внешнее кольцо и среднее кольцо оценивают двойные и высокие частоты соответственно. В центре доски расположены два концентрических круга, называемых бычьей областью или бычьим глазом. Внешний бык стоит 25 очков, а внутренний бык - в два раза, стоит 50 очков. Существует множество вариаций правил, но в самой популярной игре игроки начнут со счетом 301 или 501, и первым игроком, который снизит свою общую сумму до нуля, станет победителем. Тем не менее, нормально играть в систему «удваивает», а это означает, что игрок должен приземлить двойную (в том числе двойную бычьи глаза в центре доски) на свой последний дротик, чтобы выиграть; любой другой дротик, который уменьшил бы их общее количество до одного или ниже, означает, что оценка для этого набора из трех дротиков является «бюстом». Когда игрок может закончить свой текущий счет, он называется «проверка», а самая высокая проверка - 170: T20 T20 D25 (два тройных 20-х и двойной бык). Есть ровно одиннадцать различных способов проверки на счет 6:

D3

D1 D2

S2 D2

D2 D1

S4 D1

S1 S1 D2 S1 T1 D1 S1 S3 D1 D1 D1 D1 D1 S2 D1 S2 S2 D1

Обратите внимание, что D1 D2 считается отличным от D2 D1, поскольку они заканчиваются в разных двухместных. Однако комбинация S1 T1 D1 считается такой же, как T1 S1 D1. Кроме того, мы не будем включать пропуски при рассмотрении комбинаций; например, D3 совпадает с 0 D3 и 0 0 D3. Невероятно 42336 различных способов проверки в целом. Сколько различных способов может пройти проверка игрока со счетом менее 100?

Instructions

undefined

Tests

tests:
  - text: ''
    testString: 'assert.strictEqual(euler109(), 38182, "<code>euler109()</code> should return 38182.");'

Challenge Seed

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

euler109();

Solution

// solution required