e-olymp 9080. Три богатыря

Задача

Три богатыря шли из Бразилии в Киевскую Русь. Шли они со скоростью [latex]n[/latex] метров в минуту и должны пройти расстояние [latex]r[/latex] километров. Сколько дней им понадобится для преодоления пути?

Входные данные

Два натуральных числа [latex]n[/latex] и [latex]r[/latex] [latex]\left(n, r \leqslant10^{4}\right)[/latex]

Выходные данные

Выведите количество дней, за которое богатыри проделают свой нелегкий путь.

Тесты

Входные данные Выходные данные
1 1 10 7
2 2 8 3
3 4 70 13
4 5 68 10
5 3 12 3

Код программы

Решение

Ответом к задаче будет количество дней, за которое богатыри проделают путь. То есть нам просто надо поделить путь на скорость. Но загвоздка задачи состоит в том, что скорость дана в метрах в минуту, а нам надо перевести в километры в сутки. В одних сутках [latex]1440[/latex] минут, в километре [latex]1000[/latex] метров. Выполнив математические преобразования, получаем, что надо заданное значение скорости умножить на [latex]1.44[/latex]. Выводим результат деления пути на скорость, умноженную на [latex]1.44[/latex]. Так как получится нецелый результат, округляем значение в сторону большего с помощью функции Math.ceil().

Ссылки

e-olymp 47. Паркет из треугольников

Задача

Прямоугольную комнату размерами [latex] m [/latex] на [latex] n [/latex] (сначала по горизонтали, а потом по вертикали) замостили треугольными плитками и их пронумеровали, как показано на рисунке.

За один шаг можно переместиться с одной паркетины на другую только через общую сторону. Найти наименьшее количество шагов, нужных для перемещения с паркетины [latex] a [/latex] на паркетину [latex] b [/latex].

Входные данные

Во входном файле в первой сроке через пробел заданы значения [latex]m[/latex], [latex]n[/latex] [latex]\left ( 1\leqslant n,m\leqslant 100 \right )[/latex], а во второй — [latex] a [/latex] и [latex] b [/latex].

Выходные данные

Искомое количество шагов

Тесты

# Входные данные Выходные данные
1 5 4 25 38 5
2 5 4 6 22 4
3 5 4 15 22 3
4 3 2 1 12 7
3 5 4 15 22 3
5 3 2 6 12 2

Код 1

Для того, чтобы наш код был универсален для случая [latex]firstNumber > lastNumber[/latex] и [latex]firstNumber < lastNumber[/latex] мы меняем местами [latex]firstNumber [/latex] и [latex]lastNumber[/latex]. Следующим шагом будет определение позиции [latex]firstNumber [/latex] и [latex]lastNumber[/latex]. Положим, что [latex]x[/latex] — это позиция в строке, а [latex]y[/latex] — столбце. Удобнее всего хранить значения в массиве, поэтому мы создаем массив, переменные в котором будет иметь тип [latex]int[/latex] , а размер будет фиксированный. Для определения количества шагов заведем переменную с типом [latex]int[/latex].
Важно отметить, что идея решения данного способа состоит в том, чтобы на позиции [latex]Search[firstNumberx — 1][/latex] стояло количество шагов, совершенных в ходе решения.

Код 2

Ссылки

Задача на e-olymp

Код_1 задачи на ideone

Код_2 задачи на ideone