atcoder#ARC094B. [ABC093D] Worst Case

[ABC093D] Worst Case

配点 : 700700

問題文

高橋君を含めた 10101010^{10^{10}} 人の参加者が 22 回のプログラミングコンテストに参加しました。 各コンテストでは全員に 11 位から 10101010^{10^{10}} 位までの相異なる順位がつきました。

参加者のスコアとは、22 回のコンテストでの順位を掛け合わせた値です。

次のクエリ QQ 個に答えてください。

  • ii 個目のクエリでは、22 つの正の整数 Ai,BiA_i,B_i が与えられる。高橋君が 11 回目のコンテストで AiA_i 位、22 回目のコンテストで BiB_i 位を取ったと仮定して、高橋君よりスコアの小さい参加者の人数の最大値を求めよ。

制約

  • 1Q1001 \leq Q \leq 100
  • 1Ai,Bi109(1iQ)1\leq A_i,B_i\leq 10^9(1\leq i\leq Q)
  • 入力はすべて整数である

入力

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

QQ

A1A_1 B1B_1

::

AQA_Q BQB_Q

出力

クエリごとに、高橋君よりスコアの小さい参加者の人数の最大値を出力せよ。

8
1 4
10 5
3 3
4 11
8 9
22 40
8 36
314159265 358979323
1
12
4
11
14
57
31
671644785

11 回目のコンテストで xx 位を、22 回目のコンテストで yy 位を取った参加者を (x,y)(x,y) で表すことにします。

11 つめのクエリでは、高橋君よりスコアの小さい参加者として (2,1)(2,1) が考えられます。22 人以上のスコアが高橋君のスコアより小さくなることはないため、11 を出力します。