freeCodeCamp/curriculum/challenges/russian/08-coding-interview-prep/project-euler/problem-175-fractions-invol...

2.4 KiB

id challengeType title videoUrl localeTitle
5900f41c1000cf542c50ff2e 5 Problem 175: Fractions involving the number of different ways a number can be expressed as a sum of powers of 2 Задача 175: Фракции, включающие количество разных способов, число может быть выражено как сумма степеней 2

Description

Определим f (0) = 1 и f (n) как число способов записи n как суммы степеней 2, где никакая мощность не более двух раз.

Например, f (10) = 5, поскольку существует пять различных способов выражения 10:10 = 8 + 2 = 8 + 1 + 1 = 4 + 4 + 2 = 4 + 2 + 2 + 1 + 1 = 4 + 4 + 1 + 1

Можно показать, что для любой доли p / q (p> 0, q> 0) существует хотя бы одно целое число n такое, что f (n) / f (n-1) = p / q. Например, наименьшее n, для которого f (n) / f (n-1) = 13/17 равно 241. Бинарное разложение 241 равно 11110001. Считая это двоичное число от самого значащего бита до наименее значимого бита, 4 one, 3 zeroes и 1 one. Будем называть строку 4,3,1 сокращенным двоичным расширением 241. Найти сокращенное двоичное разложение наименьшего n, для которого f (n) / f (n-1) = 123456789/987654321. Дайте свой ответ как целые числа, разделенные запятой, без каких-либо пробелов.

Instructions

Tests

tests:
  - text: '<code>euler175()</code> должен возвращать 1, 13717420, 8.'
    testString: 'assert.strictEqual(euler175(), 1, 13717420, 8, "<code>euler175()</code> should return 1, 13717420, 8.");'

Challenge Seed

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

euler175();

Solution

// solution required