Universal Cup Judging System

Universal Cup

Time Limit: 1.0 s Memory Limit: 256 MB Total points: 100 Hackable ✓
Statistics

Í KMP-reikniritinu er next-fylkið (einnig þekkt sem LPS-fylkið, fyrir Longest Prefix Suffix, eða bilunarfallið) grunn- hugtak. Gefinn er strengur $S = s_1s_2\dots s_n$ af lengd $n$, og er next-fylki hans $next[1..n]$ skilgreint þannig að $next[i]$ táknar lengd lengsta eins eiginlega forskeytis og eiginlega viðskeytis hlutstrengsins $S[1..i]$, nánar tiltekið er $next[1] = 0$. Formlega er það skilgreint sem:

$$next[i] = \max_{k=0,\dots,i-1} \{k : S[1\dots k] = S[i-k+1\dots i]\}$$

Hér er $S[l..r]$ skilgreint sem hlutstrengurinn sem myndast af $l$-ta stafnum til $r$-ta stafsins í strengnum $S$. Litið er svo á að $\forall 1 \le i \le n$, $S[1\dots 0] = S[i+1\dots i]$, sem eru báðir tómir strengir.

Gefið er fylki $A[1..n]$ af lengd $n$. Þú þarft að telja hversu margir ólíkir strengir $S$ af lengd $n$ skilgreindir yfir stafamenginu $\Sigma$ hafa next-fylki sem er nákvæmlega jafnt gefna fylkinu $A$. Stærð stafamengisins er $m$. Skrifið út fjölda slíkra strengja módúló $998\,244\,353$.

Inntak

Það eru margir prófunartilvik í einni prófunarskrá. Fyrsta línan í inntakinu inniheldur eina heiltölu $T$ ($1 \le T \le 10^5$), sem gefur til kynna fjölda prófunartilvika.

Fyrir hvert prófunartilvik:

  • Fyrsta línan inniheldur tvær heiltölur $n$ ($2 \le n \le 10^5$) og $m$ ($1 \le m \le 10^6$) sem tákna lengd gefna fylkisins og stærð stafamengisins.
  • Önnur línan inniheldur $n$ heiltölur, aðskildar með bilum, sem tákna gefna fylkið $A$. Tryggt er að $\forall 1 \le i \le n$, $0 \le A_i \le i - 1$.

Tryggt er að heildarsumma $n$ fari ekki yfir $5 \times 10^5$, þ.e. $\sum n \le 5 \times 10^5$.

Úttak

Fyrir hvert prófunartilvik skal skrifa út eina línu með einni heiltölu, sem táknar fjölda strengja sem uppfylla skilyrðin, tekið módúló $998\,244\,353$.

Dæmi

Inntak

3
3 3
0 1 2
7 3
0 0 0 1 2 3 0
7 3
0 0 0 1 2 3 1

Úttak

3
24
0

Athugasemd

Fyrir annan gagnahópinn í dæminu skulum við gera ráð fyrir að stafamengið sé $\Sigma = \{'a', 'b', 'c'\}$. Strengirnir $24$ sem uppfylla kröfurnar eru:

abbabbb abbabbc abcabcb abcabcc acbacbb acbacbc
accaccb accaccc baabaaa baabaac bacbaca bacbacc
bcabcaa bcabcac bccbcca bccbccc caacaaa caacaab
cabcaba cabcabb cbacbaa cbacbab cbbcbba cbbcbbb

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.