Universal Cup Judging System

Universal Cup

時間限制: 1 s 記憶體限制: 1024 MB
统计

VegiCat と VegiDog は Slay the Spire で特別な決闘をしています。VegiCat はウォッチャー A として、VegiDog はウォッチャー B としてプレイします。A と B の基本攻撃力はそれぞれ $a$ と $b$ であり、初期 HP はそれぞれ $h_A$ と $h_B$ です。

problem_23595_17aa2d8990609c5348c9bf4e9d000ebd.png

各ラウンドの開始時に、ゲームはそのラウンドにおける各ウォッチャーのスタンスを決定します。各ウォッチャーは以下の 2 つのスタンスのいずれかになります:

  • 通常(Normal):与えるダメージと受けるダメージは変化しない。
  • 憤怒(Wrath):与えるダメージと受けるダメージがともに 2 倍になる。

各攻撃において、ダメージは最初、攻撃側の基本攻撃力に等しくなります。攻撃側が憤怒状態であればダメージは 2 倍になり、防御側が憤怒状態であればさらに 2 倍になります。したがって、各ラウンドにおけるダメージは以下の通りです:

  • 両方のキャラクターが通常状態の場合、A は B に $a$ ダメージを与え、B は A に $b$ ダメージを与える。
  • ちょうど一方のキャラクターが憤怒状態の場合、A は B に $2a$ ダメージを与え、B は A に $2b$ ダメージを与える。
  • 両方のキャラクターが憤怒状態の場合、A は B に $4a$ ダメージを与え、B は A に $4b$ ダメージを与える。

各ラウンドでは、両方のキャラクターが同時に 1 回ずつ攻撃し、両方の HP が同時に減少します。ラウンド中にいずれかのキャラクターの HP が $0$ 以下になったとしても、両方の攻撃は有効です。ラウンドの終了時に、HP が $0$ 以下のキャラクターは死亡します。いずれかのキャラクターが死亡した場合、戦闘は直ちに終了します。そうでない場合、次のラウンドが始まります。基本攻撃力は決して変化せず、HP が回復することもありません。

各ラウンドのスタンスはプレイヤーではなくゲームによって決定されます。各ラウンドにおいて、2 人のキャラクターのスタンスのあらゆる組み合わせが起こり得ます。

A が生存したまま B が死亡した場合にのみ、VegiCat の勝利となります。両方のキャラクターが同じラウンドに死亡した場合、VegiCat の勝利にはなりません。両方のキャラクターのスタンスがどのように変化しても VegiCat が必ず勝利するかどうかを判定してください。

入力

1 行目にはテストケースの個数を表す整数 $T$ ($1 \le T \le 10^5$) が与えられます。続いて各テストケースが与えられます。

各テストケースは 1 行からなり、4 つの整数 $a$, $b$, $h_A$, $h_B$ ($1 \le a, b, h_A, h_B \le 10^{18}$) が与えられます。これらはそれぞれキャラクターの基本攻撃力と初期 HP を表します。

出力

各テストケースについて、両方のキャラクターのスタンスがどのように変化しても VegiCat が勝利するならば YES を、そうでなければ NO を出力してください。各答えは別々の行に出力してください。

答えは大文字・小文字を問いません。例えば、yEs、yes、Yes、YES はすべて肯定の応答として受理されます。

入出力例

入力例 1

5
1 1 5 1
1 1 4 1
1 1 1 1
1 1 1 5
2 3 13 2

出力例 1

YES
NO
NO
NO
YES

入力例 2

4
3 2 18 13
3 2 16 13
3 2 9 13
3 2 17 13

出力例 2

YES
NO
NO
YES

注記

1 番目のサンプルの 1 番目のテストケースでは、B は必ず第 1 ラウンドで死亡します。A はそのラウンドで最大でも $4$ ダメージしか受けず、生存します。

1 番目のサンプルの 2 番目のテストケースでは、第 1 ラウンドで両方のキャラクターが通常状態であれば A が勝利します。第 1 ラウンドで両方のキャラクターが憤怒状態であれば、両方とも死亡します。したがって、答えは NO です。

2 番目のサンプルの 2 番目のテストケースでは、最初の $4$ ラウンドで両方のキャラクターが通常状態であった場合、残りの HP はそれぞれ $8$ と $1$ になります。ラウンド $5$ で両方が憤怒状態に入ると、両方とも死亡するため、勝利は保証されません。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.