Universal Cup Judging System

Universal Cup

시간 제한: 1 s 메모리 제한: 1024 MB
통계

VegiCat пен VegiDog Slay the Spire ойынында ерекше дуэль ойнап жатыр. VegiCat Бақылаушы A ретінде, ал VegiDog Бақылаушы B ретінде ойнайды. A мен B-нің базалық шабуыл күштері сәйкесінше $a$ және $b$, ал бастапқы денсаулық мәндері сәйкесінше $h_A$ және $h_B$.

problem_23595_17aa2d8990609c5348c9bf4e9d000ebd.png

Әр раундтың басында ойын сол раундқа арналған әр Бақылаушының күйін (stance) анықтайды. Әр Бақылаушы келесі екі күйдің бірінде бола алады:

  • Қалыпты (Normal): келтірілетін зақым мен алынатын зақым өзгермейді.
  • Қаһар (Wrath): келтірілетін зақым да, алынатын зақым да екі еселенеді.

Әр шабуыл үшін зақым бастапқыда шабуылдаушының базалық шабуыл күшіне тең болады. Егер шабуылдаушы Қаһар күйінде болса, ол екі еселенеді, ал егер қорғанушы Қаһар күйінде болса, тағы да екі еселенеді. Осылайша, әр раундтағы зақым келесідей болады:

  • Егер екі кейіпкер де Қалыпты күйде болса, A B-ге $a$ зақым келтіреді, ал B A-ға $b$ зақым келтіреді.
  • Егер дәл бір кейіпкер Қаһар күйінде болса, A B-ге $2a$ зақым келтіреді, ал B A-ға $2b$ зақым келтіреді.
  • Егер екі кейіпкер де Қаһар күйінде болса, A B-ге $4a$ зақым келтіреді, ал B A-ға $4b$ зақым келтіреді.

Әр раундта екі кейіпкер де бір уақытта бір реттен шабуыл жасайды және екеуінің де денсаулық мәндері бір уақытта азаяды. Раунд барысында кейіпкерлердің бірінің денсаулығы $0$ немесе одан төмен болып қалса да, екі шабуыл да жүзеге асады. Раундтың соңында денсаулығы $0$-ден кіші немесе оған тең кейіпкер өледі. Егер кейіпкерлердің бірі өлсе, шайқас бірден аяқталады; әйтпесе келесі раунд басталады. Базалық шабуыл күштері ешқашан өзгермейді, ал денсаулық ешқашан қалпына келтірілмейді.

Әр раундтағы күйлерді ойыншылар емес, ойын анықтайды. Әр раундта екі кейіпкердің күйлерінің кез келген комбинациясы болуы мүмкін.

VegiCat тек B өліп, A тірі қалған жағдайда ғана жеңеді. Егер екі кейіпкер де бір раундта өлсе, VegiCat жеңбейді. Екі кейіпкердің күйлері қалай өзгерсе де, VegiCat-тің жеңетінін немесе жеңбейтінін анықтаңыз.

Кіріс деректері

Бірінші жолда тест жағдайларының санын білдіретін бір бүтін сан $T$ ($1 \le T \le 10^5$) берілген. Одан кейін тест жағдайларының сипаттамасы беріледі.

Әр тест жағдайы кейіпкерлердің сәйкесінше базалық шабуыл күштері мен бастапқы денсаулық мәндерін беретін төрт бүтін саннан $a$, $b$, $h_A$ және $h_B$ ($1 \le a, b, h_A, h_B \le 10^{18}$) тұратын бір жолды қамтиды.

Шығыс деректері

Әр тест жағдайы үшін, егер екі кейіпкердің күйлері қалай өзгерсе де 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

Ескертпе

Бірінші мысалдың бірінші тест жағдайында B әрқашан бірінші раундта өледі. A сол раундта ең көбі $4$ зақым алып, тірі қалады.

Бірінші мысалдың екінші тест жағдайында, егер бірінші раундта екі кейіпкер де қалыпты күйде болса, A жеңеді. Егер бірінші раундта екі кейіпкер де Қаһар күйінде болса, екеуі де өледі. Сондықтан жауап — NO.

Екінші мысалдың екінші тест жағдайында, егер алғашқы $4$ раунд бойы екі кейіпкер де қалыпты күйде болса, олардың қалған денсаулық мәндері $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.