freeCodeCamp/curriculum/challenges/russian/08-coding-interview-prep/project-euler/problem-478-mixtures.russia...

58 lines
3.2 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

---
id: 5900f54c1000cf542c51005e
challengeType: 5
title: 'Problem 478: Mixtures'
forumTopicId: 302155
localeTitle: 'Задача 478: Смеси'
---
## Description
<section id='description'>
Рассмотрим смеси трех веществ: A, B и C. Смесь может быть описана отношением количеств A, B и C в ней, то есть (a: b: c). Например, смесь, описываемая соотношением (2: 3: 5), содержит 20% А, 30% В и 50% С. <p> Для целей этой проблемы мы не можем отделить отдельные компоненты от смеси. Однако мы можем комбинировать различные количества различных смесей с образованием смесей с новыми соотношениями. </p><p> Например, предположим, что у нас есть три смеси с соотношениями (3: 0: 2), (3: 6: 11) и (3: 3: 4). Путем смешивания 10 единиц первого, 20 единиц второго и 30 единиц третьего, мы получаем новую смесь с соотношением (6: 5: 9), так как: (10 · 3/5 + 20 · 3/20 + 30 · 3/10: 10 · 0/5 + 20 · 6/20 + 30 · 3/10: 10 · 2/5 + 20 · 11/20 + 30 · 4/10) = (18: 15: 27) = (6: 5: 9) </p><p> Однако с теми же тремя смесями невозможно сформировать соотношение (3: 2: 1), так как количество B всегда меньше количества C. </p><p> Пусть n - положительное целое число. Предположим, что для каждой тройки целых чисел (a, b, c) с 0 ≤ a, b, c ≤ n и gcd (a, b, c) = 1 мы имеем смесь с отношением (a: b: c). Пусть M (n) - множество всех таких смесей. </p><p> Например, M (2) содержит 19 смесей со следующими соотношениями: {(0: 0: 1), (0: 1: 0), (0: 1: 1), (0: 1: 2), ( 0: 2: 1), (1: 0: 0), (1: 0: 1), (1: 0: 2), (1: 1: 0), (1: 1: 1) 1: 2), (1: 2: 0), (1: 2: 1), (1: 2: 2), (2: 0: 1), (2: 1: 0), (2: 1: 1), (2: 1: 2), (2: 2: 1)}. </p><p> Пусть E (n) - число подмножеств M (n), которое может производить смесь с соотношением (1: 1: 1), т. Е. Смесь с равными частями A, B и C. Мы можем проверить, что E (1 ) = 103, E (2) = 520447, E (10) mod 118 = 82608406 и E (500) mod 118 = 13801403. Найдите E (10 000 000) мод 118. </p>
</section>
## Instructions
<section id='instructions'>
</section>
## Tests
<section id='tests'>
```yml
tests:
- text: <code>euler478()</code> should return 59510340.
testString: assert.strictEqual(euler478(), 59510340);
```
</section>
## Challenge Seed
<section id='challengeSeed'>
<div id='js-seed'>
```js
function euler478() {
// Good luck!
return true;
}
euler478();
```
</div>
</section>
## Solution
<section id='solution'>
```js
// solution required
```
</section>