#arc0213. [arc021_3]増築王高橋君

[arc021_3]増築王高橋君

問題文

高橋君は友人達ととあるゲームをしている。

このゲームでは、プレイヤーは建物を購入し、増改築し、できるだけ多くお金を稼ぐことが目的となる。

高橋君は現在 22 位であり、どうにかして首位の青木君より多くのお金を稼がなければならない。

高橋君は、最も多くの回数増築したものに与えられる称号「増築王」を手に入れることで、政府から受ける援助金を利用して勝利しようと計画した。長年の経験から、あと KK 回増築することで増築王になれることが分かっている。

高橋君は現在 NN 軒の建物を所有している。建物には 11 から NN まで番号がついている。最初、どの建物も増築されていない。

建物 i(1iN)i (1 ≦ i ≦ N) について、以下のことが分かっている。

  • 建物 ii の増築前の価格は AiA_i である。
  • 建物 ii11 回増築するには、建物 ii の現在の価格に等しい費用が必要となる。
  • 建物 ii の価格は、11 回増築する度に DiD_i だけ上昇する。

高橋君は他の戦略も同時並行で実施するので、増築にかけるお金の合計値ができるだけ少なくなるようにしたい。

あなたは高橋君の代わりに KK 回増築するのに必要な価格の合計値として考えられる最小値を求めてほしい。


入力

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

KK NN A1A_1 D1D_1 A2A_2 D2D_2 : ANA_N DND_N

  • 11 行目には、増築王になるために必要な増築の回数 K(1K108)K (1 ≦ K ≦ 10^8) が与えられる。
  • 22 行目には、高橋君が所有している建物の軒数 N(1N105)N (1 ≦ N ≦ 10^5) が与えられる。
  • 33 行目から NN 行では、建物の情報が与えられる。このうち ii 行目では整数 Ai(1Ai103)A_i (1 ≦ A_i ≦10^3) と整数 Di(1Di103)D_i (1 ≦ D_i ≦10^3) が空白を区切りとして与えられる。

部分点

この問題には部分点が設定されている。

  • K300K ≦ 300 かつ N300N ≦ 300 を満たすデータセット 11 に正解した場合は、3030 点が与えられる。
  • K5,000K ≦ 5,000 かつ N5,000N ≦ 5,000 を満たすデータセット 22 に正解した場合は、上記とは別に 1010 点が与えられる。
  • K105K ≦ 10^5 を満たすデータセット 33 に正解した場合は、上記とは別に 1515 点が与えられる。
  • 追加制約のないデータセット 44 に正解した場合は、上記とは別に 4545 点が与えられる。

出力

KK 回増築するのに必要な金額の合計として考えられるものの最小値を 11 行に出力せよ。出力の末尾にも改行を入れること。


入力例1


4
3
10 3
12 4
15 5

出力例1


50

例えば、以下のように増築します。

  1. 建物 11 を増築します。現在の建物 11 の価格は 1010 なので、増築にかかった金額の合計は 1010 となります。また、増築後の建物 11 の価格は 1313 になります。
  2. 建物 11 を増築します。現在の建物 11 の価格は 1313 なので、増築にかかった金額の合計は 2323 となります。また、増築後の建物 11 の価格は 1616 になります。
  3. 建物 22 を増築します。現在の建物 22 の価格は 1212 なので、増築にかかった金額の合計は 3535 となります。また、増築後の建物 22 の価格は 1616 になります。
  4. 建物 33 を増築します。現在の建物 33 の価格は 1515 なので、増築にかかった金額の合計は 5050 となります。また、増築後の建物 33 の価格は 2020 になります。

このようにすることで、44 回増築するのにかかる金額を 5050 にすることができます。


入力例2


8
4
1 1
10 1
100 1
1000 1

出力例2


36

建物 1188 回増築します。