NAPC 2025 OPEN 2026/03/27 09:00 ~ 2026/03/27 14:15 5:15:00.000

H Shortest Path on Ring

問題
制限時間: 2 sec メモリ制限: 2048 MB
problem
問題文

正整数 $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$ 回以上繰り返すことができます。

  • $1\leq i\leq K$ を満たす整数 $i$ を $1$ つ選ぶ。 変数 $X$ の値を $f_i(X)$ で置き換え、コスト $q_i$ を支払う。

$X=Y$ にすることが可能かどうかを判定し、可能な場合は支払うコストの総和の最小値を求めてください。 ただし、操作を行わなかったときのコストの総和は $0$ とします。

制約
  • 入力はすべて整数
  • $2 \leq M \leq 10^9$
  • $1 \leq K \leq 10^5$
  • $0 \leq Y \leq M-1$
  • $1 \leq p_i \leq 10^2$
  • $1 \leq q_i \leq 10^9$
入力

入力は以下の形式で標準入力から与えられます。

$M$ $K$ $Y$
$p_1$ $q_1$
$p_2$ $q_2$
$\vdots$
$p_K$ $q_K$
出力

$X=Y$ にすることができない場合は No を出力してください。

$X=Y$ にすることができる場合は Yes を出力し、改行してください。 続けて、支払うコストの総和の最小値を出力してください。

入力例 1
7 3 2
3 1
2 100
4 2
出力例 1
Yes
3

$f_1(f_1(f_1(0)))=2$ であり、このときコストの総和は $3$ です。 コスト $3$ 未満で条件を達成することはできません。

入力例 2
8 2 2
4 1
8 2
出力例 2
No

条件を満たすことはできません。

入力例 3
1000000000 1 1
81 1000000000
出力例 3
Yes
987654321000000000

オーバーフローに注意してください。