Монстр

Ссылка на оригинал задачи

Задача:

Монстр гонится за Риком и Морти на другой планете. Они настолько напуганы, что иногда кричат. Точнее, Рик кричит в моменты времени [latex]b,[/latex] [latex]b + a,[/latex] [latex]b + 2a,[/latex] [latex]b + 3a,[/latex]…, а Морти кричит в моменты времени [latex]d,[/latex] [latex]d + c,[/latex] [latex]d + 2c,[/latex] [latex]d + 3c,[/latex]….

Монстр поймает их, если в какой-то момент времени они закричат одновременно. Так что он хочет знать, когда он поймает их (первый момент времени, когда они закричат одновременно) или они никогда не закричат одновременно.

Ввод:

Первая строка входных данных содержит два целых числа [latex]a[/latex] и [latex]b[/latex]  [latex](1\leq a,[/latex]  [latex]b\leq 100).[/latex]

Вторая строка входных данных содержит два целых числа [latex]c[/latex] и [latex]d[/latex] [latex](1\leq c,[/latex]  [latex]d\leq 100).[/latex]

Вывод:

Выведите первый момент времени, когда Рик и Морти закричат одновременно, или  - 1, если они никогда не закричат одновременно.

Тесты:

Ввод
Вывод
20 2
9 19
82
2 1
16 12
-1

Код:

Решение:

В этих моментах времени, заданных прогрессиями, изменяется только коэффициент при [latex]a[/latex] и [latex]c.[/latex] Создадим для них 2 цикла. Так как равных моментов времени может быть много, а нам нужен только первый, создаем вектор и ,когда моменты равны, добавляем в него этот момент. Затем, уже вне цикла, проверяем пустой ли вектор, и в таком случаем выводим -1, так как моменты на данном промежутке не были равны ни разу. Если же вектор непустой, выходим первый элемент вектора. Он и будет искомым первым одновременным криком.

 

Версия программы на Ideone.com

Ссылка на источник

One thought on “Монстр

  1. — Пожалуйста, используйте latex для формул.
    — Ссылку нужно давать не на сайт, где тысячи задач, а на саму задачу.
    — Добавьте ключевые слова.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *