Universal Cup Judging System

Universal Cup

시간 제한: 3.0 s 메모리 제한: 1024 MB 총점: 100 해킹 가능 ✓
통계

Jokaiselle kokonaisluvulle luvusta $1$ lukuun $N$ on yksi kyseisellä luvulla numeroitu laatikko. Lisäksi jokaiselle kokonaisluvulle luvusta $1$ lukuun $N$ on $M$ kyseisellä kokonaisluvulla numeroitua palloa.

Nämä $NM$ palloa sekoitetaan ja jaetaan sitten $N$ laatikkoon siten, että jokaiseen laatikkoon laitetaan täsmälleen $M$ palloa.

Pallot voidaan sijoittaa laatikoihin $\frac{(NM)!}{(M!)^N}$ eri tavalla (jos kaikki pallot katsotaan erotettaviksi toisistaan), ja kaikki nämä sijoittelut esiintyvät yhtä suurella todennäköisyydellä.

Suoritat näille laatikoille ja palloille operaatioita. Yksi operaatio koostuu seuraavista vaiheista:

  1. Valitse yksi laatikko ja mene sen eteen.
  2. Jos kyseisessä laatikossa ei ole yhtään palloa, lopeta operaatio.
  3. Valitse mikä tahansa pallo kyseisestä laatikosta ja heitä se pois laatikosta.
  4. Mene lopuksi sen laatikon eteen, jonka numero vastaa viimeksi pois heitetyn pallon numeroa, ja palaa vaiheeseen $2$.

Määritellään tuloksesi operaatioiden lukumääräksi, joka tarvitaan, kunnes kaikki $NM$ palloa on heitetty pois. Haluat minimoida tämän tuloksen.

Etsi tuloksen odotusarvo optimaalisesti toimittaessa modulo $998244353$.

Input

Ensimmäinen rivi sisältää luvut $N$ ja $M$ tässä järjestyksessä välilyönneillä erotettuina. ($1 \le N \le 10^5, 1 \le M \le 100$)

Output

Tulosta vastaus.

Examples

Input 1

2 2

Output 1

166374060

Input 2

3 1

Output 2

831870296

Input 3

100000 100

Output 3

402978825

Note

Ensimmäisessä esimerkissä mahdolliset pallojen sijoittelut ja niitä vastaavat optimaaliset toimintatavat ovat seuraavat:

  • Laita kaksi numerolla $1$ merkittyä palloa laatikkoon $1$ ja kaksi numerolla $2$ merkittyä palloa laatikkoon $2$. (Todennäköisyys $1/6$)
    • Mene ensimmäisessä operaatiossa laatikon $1$ eteen. Ota sieltä numerolla $1$ merkitty pallo ja mene laatikon $1$ eteen. Ota sitten toinen numerolla $1$ merkitty pallo ja mene jälleen laatikon $1$ eteen. Tässä vaiheessa laatikko $1$ on tyhjä, joten lopeta operaatio.
    • Mene toisessa operaatiossa laatikon $2$ eteen. Ota sieltä numerolla $2$ merkitty pallo ja mene laatikon $2$ eteen. Ota sitten toinen numerolla $2$ merkitty pallo ja mene jälleen laatikon $2$ eteen. Tässä vaiheessa laatikko $2$ on tyhjä, joten lopeta operaatio.
    • Tässä tapauksessa pienin saavutettavissa oleva tulos on $2$.
  • Laita yksi numerolla $1$ merkitty pallo ja yksi numerolla $2$ merkitty pallo kumpaankin laatikoista $1$ ja $2$. (Todennäköisyys $2/3$)
    • Mene ensimmäisessä operaatiossa laatikon $1$ eteen. Ota sieltä numerolla $1$ merkitty pallo ja mene laatikon $1$ eteen. Ota sitten numerolla $2$ merkitty pallo ja mene laatikon $2$ eteen. Ota sitten numerolla $2$ merkitty pallo ja mene laatikon $2$ eteen. Ota sitten numerolla $1$ merkitty pallo ja mene laatikon $1$ eteen. Tässä vaiheessa laatikko $1$ on tyhjä, joten lopeta operaatio.
    • Tässä tapauksessa pienin saavutettavissa oleva tulos on $1$.
  • Laita kaksi numerolla $2$ merkittyä palloa laatikkoon $1$ ja kaksi numerolla $1$ merkittyä palloa laatikkoon $2$. (Todennäköisyys $1/6$)
    • Mene ensimmäisessä operaatiossa laatikon $1$ eteen. Ota sieltä numerolla $2$ merkitty pallo ja mene laatikon $2$ eteen. Ota sitten numerolla $1$ merkitty pallo ja mene laatikon $1$ eteen. Ota sitten numerolla $2$ merkitty pallo ja mene laatikon $2$ eteen. Ota sitten numerolla $1$ merkitty pallo ja mene laatikon $1$ eteen. Tässä vaiheessa laatikko $1$ on tyhjä, joten lopeta operaatio.
    • Tässä tapauksessa pienin saavutettavissa oleva tulos on $1$.

Yhteenvetona pienin tulos on $2$ todennäköisyydellä $1/6$ ja pienin tulos on $1$ todennäköisyydellä $5/6$, joten odotettu kokonaistulos on $7/6$. Tulosta siis $166374060$, joka esittää tätä arvoa modulo $998244353$.

Odotusarvon modulo $998244353$ määritelmä

Voidaan todistaa, että etsittävä odotusarvo on aina rationaaliluku. Lisäksi tämän tehtävän rajoitusten puitteissa, jos odotusarvo kirjoitetaan supistettuna murtolukuna $\frac{y}{x}$, on taattu, että $x$ ei ole jaollinen luvulla $998244353$.

Tässä tapauksessa lukujen $0$ ja $998244352$ välillä (rajat mukaan lukien) on olemassa yksikäsitteinen kokonaisluku $z$, joka toteuttaa ehdon $xz \equiv y \pmod{998244353}$. Tulosta tämä $z$.

Editorials

IDTypeStatusTitlePosted ByLast UpdatedActions
#1526EditorialOpen题解jianglyView

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.