atcoder#ARC123E. [ARC123E] Training

[ARC123E] Training

配点 : 700700

問題文

XX さんと YY さんの 22 人のプログラマが、競技プログラミングを始めることになりました。

競技プログラミングの実力は、「レベル」と呼ばれる正の整数で表され、はじめ XX さんのレベルは AXA_XYY さんのレベルは AYA_Y です。22 人はこれから練習メニューをこなすことで、レベルを上げていきます。

22 人のレベルの上がり方について、次のことが分かっています:

  • XX さんはちょうど BXB_X 個の練習メニューをこなすたびに、レベルがひとつ上がります。
  • YY さんはちょうど BYB_Y 個の練習メニューをこなすたびに、レベルがひとつ上がります。

n=1,2,,Nn = 1, 2, \ldots, N のうちで次を満たすものはいくつあるかを答えてください。

  • 22 人がちょうど nn 個ずつの練習メニューをこなした場合、22 人の最終的なレベルは等しくなる。

一つの入力ファイルにつき、TT 個のテストケースに答えてください。

制約

  • 1T2×1051\leq T\leq 2\times 10^5
  • 1N1091\leq N\leq 10^{9}
  • 1AX,BX,AY,BY1061\leq A_X, B_X, A_Y, B_Y \leq 10^6

入力

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

TT

case1\text{case}_1

case2\text{case}_2

\vdots

caseT\text{case}_T

各テストケースは以下の形式で与えられます。

NN AXA_X BXB_X AYA_Y BYB_Y

出力

答えを出力してください。

5
10 5 3 4 2
5 5 3 4 2
100 5 3 4 2
10 5 3 4 3
10 5 10 5 9
6
3
6
0
9

ひとつめのテストケースについて説明します。

n=1,2,,10n = 1, 2, \ldots, 10 に対して、nn 個の練習メニューをこなした場合の 22 人のレベルは次のようになります:

  • XX さんのレベル:5,5,6,6,6,7,7,7,8,85, 5, 6, 6, 6, 7, 7, 7, 8, 8
  • YY さんのレベル:4,5,5,6,6,7,7,8,8,94, 5, 5, 6, 6, 7, 7, 8, 8, 9

66 個の nnn=2,4,5,6,7,9n = 2, 4, 5, 6, 7, 9)の場合に 22 人のレベルが等しくなります。したがって答えは 66 となります。