Ларёк и две куклы

Автор задачи: Егор Юлин, разработчик: Иван Пашков

Для начала заметим, что минимальная величина, на которую мы можем изменить количество проклятий в кукле, равна $$$\mathtt{gcd}(c, m)$$$ и что максимальная сумма проклятий в куклах достигается или при максимальном количестве проклятий в деревянной кукле, или при максимальном количестве проклятий в тряпичной кукле.

Чтобы понять, какое максимальное количество проклятий может быть у некоторой куклы, для ее начальной стоимости $$$k$$$ вычислим $$$k \bmod \mathtt{gcd}(c, m)$$$. Тогда максимально возможная стоимость для этой игрушки это $$$m - \mathtt{gcd}(c, m) + (k \bmod \mathtt{gcd}(c, m))$$$.

Чтобы узнать количество проклятий другой куклы при определённом количестве проклятий в рассматриваемой, заметим, что если количество проклятий в одной кукле изменилось на величину $$$s \bmod m$$$, то у другой — на $$$(m - s) \bmod m$$$.