#codefestival2015qualBd. [codefestival_2015_qualB_d]Squares, Pieces and Coloring

[codefestival_2015_qualB_d]Squares, Pieces and Coloring

問題文

1010010^{100} 個の白いマスが横 11 列に並んでいます。左から i(1i10100)i (1≦i≦10^{100}) 番目のマスをマス ii と呼びます。

また、駒が NN 個あり、i(1iN)i (1≦i≦N) 番目の駒を駒 ii と呼びます。

さらに、00 から 1010010^{100} までの数を数えることのできるカウンタが 11 つあります。

これらのマスと駒に対し NN 回の操作を行います。i(1iN)i (1≦i≦N) 回目の操作は以下のように行います。

  1. まず、マス SiS_i に駒 ii を置き、カウンタを 00 に初期化する。
  2. 駒のあるマスの色が白ならそのマスを黒に塗ってカウンタを 11 増加させ、駒のあるマスの色が黒なら 11 つ右のマスに駒を移動させる。
  3. 2.2. を繰り返していき、カウンタの値が CiC_i になったらその時点で操作を終了する。

これらの操作が終わった時点で NN 個の駒がそれぞれどのマスにあるかを求めてください。


入力

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

NN S1S_1 C1C_1 S2S_2 C2C_2 : SNS_N CNC_N

  • 11 行目には、整数 N(1N105)N (1 ≦ N ≦ 10^5) が与えられる。
  • 22 行目からの NN 行には、各操作の情報が与えられる。このうち i(1iN)i (1 ≦ i ≦ N) 行目には、整数 Si(1Si109),Ci(1Ci109)S_i (1 ≦ S_i ≦ 10^9), C_i (1≦C_i≦10^9) が与えられる。これは ii 回目の操作のはじめに駒 ii を置くマスがマス SiS_i であり、カウンタが CiC_i になった時点で操作 ii が終了となることを表す。

部分点

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

  • 全ての操作が終わった時点での駒のあるマスの番号が全て 10510^5 以下であるデータセットに正解した場合は、3535 点が与えられる。
  • N1000N ≦ 1000 を満たすデータセットに正解した場合は、上記とは別に 4040 点が与えられる。
  • 追加の制約のないデータセットに正解した場合は、上記とは別に 2525 点が与えられる。

出力

出力は NN 行からなる。このうち i(1iN)i (1≦i≦N) 行目には、全ての操作が終わった時点で駒 ii があるマスの番号を表す 11 つの整数を出力せよ。出力の末尾にも改行を入れること。


入力例1


4
3 3
10 1
4 2
2 4

出力例1


5
10
7
11

下図は各操作後のマスと駒の状態を表しています。

figure1


入力例2


8
2 1
3 1
1 1
5 1
1 1
9 1
8 2
7 9

出力例2


2
3
1
5
4
9
10
18

入力例3


5
1000000000 1000000000
1000000000 1000000000
1000000000 1000000000
1000000000 1000000000
1000000000 1000000000

出力例3


1999999999
2999999999
3999999999
4999999999
5999999999

出力が 3232 bit整数型に収まらない場合もあることに注意してください。