atcoder#ARC082D. [ARC082F] Sandglass
[ARC082F] Sandglass
配点 : 点
問題文
パーツAとパーツBからなる砂時計があります。これらのパーツにはいくらかの砂が入っています。 砂時計を置くときはパーツAとパーツBのどちらかが上になり、そうでないほうが下になります。
秒間に [g] の砂が上にあるパーツから下にあるパーツに落ちます。 ただし、上のパーツにもう砂が残っていない場合は砂は落ちません。
はじめ時刻 にパーツAが上にあり、 [g] の砂がパーツAに入っていて、 [g] の砂がパーツBに入っています(すなわち、合計 [g] の砂が入っています)。
時刻 に砂時計をひっくり返します。この操作は瞬間的に行われ、時間はかからないものとします。なお、時刻 とは時刻 の 秒後を指します。
クエリが 個与えられます。 各クエリは の形をしています。 各クエリに対し、 だとして、時刻 にパーツAに入っている砂の量が何gか答えてください。
制約
- $1 \leq r_1
- $0 \leq t_1
- 入力値はすべて整数
入力
入力は以下の形式で標準入力から与えられる。
..
出力
各クエリの答えを 行ごとに出力せよ。
180
3
60 120 180
3
30 90
61 1
180 180
60
1
120
つめのクエリでは、はじめパーツAに [g] 入っていた砂が [g] 減り、 [g] になります。 つめのクエリでは、はじめパーツAに入っていた [g] の砂がパーツBに落ちた後、 秒間変化は起こりません。ここで砂時計をひっくり返し、その 秒後にパーツAに入っている砂の量を聞かれているため、答えは [g] になります。
100
1
100000
4
0 100
90 100
100 100
101 100
100
10
0
0
どのクエリでもはじめにパーツAに入っている砂は [g] で、砂時計をひっくり返す前の時間での値を聞いています。
100
5
48 141 231 314 425
7
0 19
50 98
143 30
231 55
342 0
365 100
600 10
19
52
91
10
58
42
100