410763: GYM104099 1 Изменения температуры
Description
Недавно Миша и Филипп заполучили власть над температурой воздуха в своих любимых городах — Липецке и Москве. Сейчас температура воздуха в Липецке — $$$x$$$ градусов, а температура воздуха в Москве — $$$y$$$ градусов. Они планируют играть в свою любимую игру, которая называется «Уравняй».
Суть игры заключается в следующем. Сначала Миша уменьшает температуру в Липецке на $$$a$$$ и увеличивает температуру в Москве на $$$a$$$. Затем Филипп уменьшает температуру в Москве на $$$b$$$ и увеличивает температуру в Липецке на $$$b$$$. Если температура в двух городах стала равной, то друзья радуются и идут спать. В противном случае, Миша снова меняет температуру в обоих городах описанным способом, а затем Филипп меняет температуру в обоих городах описанным образом. Друзья будут выполнять данные действия до тех пор, пока температура воздуха в Липецке и Москве не станет одинаковой. Обратите внимание, что Миша и Филипп должны сделать одинаковое количество операций изменения температуры.
Так как они не хотят всю жизнь играть в данную игру, вам придется им подсказать, сравняется ли в какой-то момент температура воздуха в Липецке и Москве. При этом, если это произойдет, то вам нужно сказать, сколько пар изменений произойдет для достижения этого великого события.
Входные данныеПервая строка содержит одно целое число $$$x$$$ ($$$1 \le x \le 10^9$$$) — изначальная температура воздуха в Липецке.
Вторая строка содержит одно целое число $$$y$$$ ($$$1 \le y \le 10^9$$$) — изначальная температура воздуха в Москве.
Третья строка содержит одно целое число $$$a$$$ ($$$1 \le a \le 10^9$$$) — на сколько Миша увеличивает температуру воздуха в Москве (и, соответственно, на сколько уменьшает ее в Липецке).
Четвертая строка содержит одно целое число $$$b$$$ ($$$1 \le b \le 10^9$$$) — на сколько Филипп увеличивает температуру воздуха в Липецке (и, соответственно, на сколько уменьшает ее в Москве).
Выходные данныеЕсли у Миши и Филиппа не получится уравнять температуру воздуха в городах, используя описанные изменения, в единственной строке выведите «No» (без кавычек).
Иначе в первой строке выведите «Yes» (без кавычек). Во второй строке выведите одно целое четное число — минимальное количество изменений, при помощи которого можно достичь равной температуры в городах.
Система оценкиПомимо примеров из условия данная задача содержит $$$25$$$ тестов, каждый из которых оценивается независимо в $$$4$$$ балла.
Решения, правильно работающие при $$$1 \le x, y, a, b \le 100\,000$$$, будут оцениваться не менее, чем $$$40$$$ баллами.
ПримерыВходные данные10 6 5 4Выходные данные
Yes 4Входные данные
2 1 1 2Выходные данные
NoПримечание
Рассмотрим первый пример. Изначальная температура в Липецке и Москве равна $$$10$$$ и $$$6$$$ градусов, соответственно. За одну операцию друзья могут изменить температуры на $$$5$$$ и $$$4$$$ градуса, соответственно. Рассмотрим процесс изменений:
Номер операции | $$$x$$$ | $$$y$$$ |
$$$0$$$ | $$$10$$$ | $$$6$$$ |
$$$1$$$ | $$$5$$$ | $$$11$$$ |
$$$2$$$ | $$$9$$$ | $$$7$$$ |
$$$3$$$ | $$$4$$$ | $$$12$$$ |
$$$4$$$ | $$$8$$$ | $$$8$$$ |
Таким образом, через четыре операции в городах будет одинаковая температура.
Во втором примере можно заметить, что каждые две операции в Липецке температура будет увеличиваться на $$$1$$$ градус, а в Москве — уменьшаться на столько же. Поэтому добиться одинаковой температуры никогда не получится.