freeCodeCamp/curriculum/challenges/russian/08-coding-interview-prep/project-euler/problem-460-an-ant-on-the-m...

2.9 KiB
Raw Blame History

id challengeType title videoUrl localeTitle
5900f5381000cf542c51004b 5 Problem 460: An ant on the move Проблема 460: Муравей на ходу

Description

На евклидовой плоскости мульт перемещается из точки A (0, 1) в точку B (d, 1) для целого числа d.

На каждом шаге мультяшка в точке (x0, y0) выбирает одну из точек решетки (x1, y1), которые удовлетворяют x1 ≥ 0 и y1 ≥ 1 и идут прямо к (x1, y1) с постоянной скоростью v. Значение of v зависит от y0 и y1 следующим образом: если y0 = y1, значение v равно y0. Если y0 ≠ y1, значение v равно (y1 - y0) / (ln (y1) - ln (y0)).

Левое изображение является одним из возможных путей для d = 4. Сначала муравье идет от A (0, 1) до P1 (1, 3) со скоростью (3 - 1) / (ln (3) - ln (1) ): 1,8205. Затем требуемое время составляет sqrt (5) / 1,8205 ≈ 1.2283. От P1 (1, 3) до P2 (3, 3) муравей перемещается со скоростью 3, поэтому требуемое время составляет 2/3 ≈ 0,6667. От P2 (3, 3) до B (4, 1) муравей перемещается со скоростью (1 - 3) / (ln (1) - ln (3)) ≈ 1,8205, поэтому требуемое время составляет sqrt (5) / 1,8205 ≈ 1,2283. Таким образом, общее требуемое время составляет 1.2283 + 0.6667 + 1.2283 = 3.1233.

Правильный образ - это другой путь. Общее требуемое время рассчитывается как 0,98026 + 1 + 0,98026 = 2,96052. Можно показать, что это самый быстрый путь для d = 4.

Пусть F (d) - полное требуемое время, если муравьец выбирает самый быстрый путь. Например, F (4) ≈ 2.960516287. Мы можем проверить, что F (10) ≈ 4.668187834 и F (100) ≈ 9.217221972.

Найдите F (10000). Дайте ваш ответ округленным до девяти знаков после запятой.

Instructions

undefined

Tests

tests:
  - text: <code>euler460()</code> должен вернуться 18.420738199.
    testString: 'assert.strictEqual(euler460(), 18.420738199, "<code>euler460()</code> should return 18.420738199.");'

Challenge Seed

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

euler460();

Solution

// solution required