正整数 $M$、非負整数 $Y$、および $K$ 個の整数の組 $(p_1,q_1), (p_2, q_2), \ldots, (p_K,q_K)$ が与えられます。 関数 $f_i$ は、任意の整数 $x$ に対して、$f_i (x) = (x + p_i) \bmod M$ で定義されます。
$0$ で初期化された変数 $X$ があります。
あなたは下記の手順を $0$ 回以上繰り返すことができます。
$X=Y$ にすることが可能かどうかを判定し、可能な場合は支払うコストの総和の最小値を求めてください。 ただし、操作を行わなかったときのコストの総和は $0$ とします。
入力は以下の形式で標準入力から与えられます。
$M$ $K$ $Y$ $p_1$ $q_1$ $p_2$ $q_2$ $\vdots$ $p_K$ $q_K$
$X=Y$ にすることができない場合は No を出力してください。
$X=Y$ にすることができる場合は Yes を出力し、改行してください。
続けて、支払うコストの総和の最小値を出力してください。
7 3 2 3 1 2 100 4 2
Yes 3
$f_1(f_1(f_1(0)))=2$ であり、このときコストの総和は $3$ です。 コスト $3$ 未満で条件を達成することはできません。
8 2 2 4 1 8 2
No
条件を満たすことはできません。
1000000000 1 1 81 1000000000
Yes 987654321000000000
オーバーフローに注意してください。