atcoder#ABC203C. [ABC203C] Friends and Travel costs

[ABC203C] Friends and Travel costs

配点 : 300300

問題文

10100+110^{100}+1 個の村があり、それぞれ村 00, 村 11, \ldots, 村 1010010^{100} と番号がついています。 00 以上 10100110^{100}-1 以下の全ての整数 ii について、村 ii11 円を払う事で村 (i+1)(i+1) に移動することができます。 それ以外の移動方法はありません。

太郎君は初め KK 円を持った状態で村 00 におり、その後、可能な限り大きな番号の村まで進もうとします。 太郎君には NN 人の友達がいます。ii 人目の友達は村 AiA_i にいて、太郎君が村 AiA_i に着いたときに BiB_i 円を太郎君に渡します。 太郎君が最終的にたどり着く村の番号を求めてください。

制約

  • 1N2×1051 \leq N \leq 2\times 10^5
  • 1K1091 \leq K \leq 10^9
  • 1Ai10181 \leq A_i \leq 10^{18}
  • 1Bi1091 \leq B_i \leq 10^9
  • 入力は全て整数である。

入力

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

NN KK

A1A_1 B1B_1

::

ANA_N BNB_N

出力

答えを出力せよ。

2 3
2 1
5 10
4

太郎君は以下のように動きます:

  • 00 から村 1111 円払って移動する。所持金は 22 円となる。
  • 11 から村 2211 円払って移動する。所持金は 11 円となる。
  • 2211 人目の友達から 11 円受け取り、所持金は 22 円となる。
  • 22 から村 3311 円払って移動する。所持金は 11 円となる。
  • 33 から村 4411 円払って移動する。所持金は 00 円となり、この村には友達もいないため村 44 で止まる。

よって、 44 を出力します。

5 1000000000
1 1000000000
2 1000000000
3 1000000000
4 1000000000
5 1000000000
6000000000

答えが 3232 bit 整数に収まらないことがある事に注意してください。

3 2
5 5
2 1
2 2
10

同じ村に複数の友達がいる可能性もあります。