Universal Cup Judging System

Universal Cup

実行時間制限: 1.5 s メモリ制限: 1024 MB 満点: 100 ハック可能 ✓
統計

Yana, Mino, White және Huzz — ең жақын достар.

Жаттықтырушының ауыр тапсырмаларын ақыры аяқтаған соң, Huzz демалуға мүмкіндік алды. Ол бұл тыныштықты жақындап келе жатқан ымырттың жылы, алтын түстес мұнарына оранған, әлем баяулап қалғандай көрінген мамыражай бір түстен кейінгі уақытта тапты. Баяу соққан самал жел үлкен емен ағашының жапырақтары арасынан қиғаштай түскен күн сәулесінде билеген шаң-тозаң бөлшектерін ғана тербететін.

Сол ұйқы шақыратын жайлы тыныштықта Huzz өзінің жұмсақ акула ойыншығының ішінен бір алмастыруды (пермутацияны) тауып алды. Ол көңіл көтеру үшін оны достарымен бөлісуді жөн көрді.

Mino бөлуді жақсы көреді. Ол бұл алмастыруды бірнеше іргелес кесінділерге бөле алады.

Yana орын ауыстыруды жақсы көреді. Ол бір тұтас кесіндіні таңдап, оның ең үлкен және ең кіші элементтерінің орындарын ауыстыра алады.

Нақтырақ айтқанда, олар келесі екі түрлі амалды кез келген ретпен, кез келген мәрте орындай алады:

  • split: Ұзындығы $1$-ден үлкен бір тұтас кесіндіні таңдау. Содан кейін оның ішінен бір орынды таңдап, оны көршілес екі тұтас кесіндіге бөлу. Мысалы, $(a_i, \dots, a_j)$ кесіндісін $(a_i, \dots, a_k)$ және $(a_{k+1}, \dots, a_j)$ кесінділеріне бөлуге болады, мұндағы $i \le k < j$.
  • swap: Бір тұтас кесіндіні таңдап, оның ең үлкен және ең кіші элементтерінің орындарын ауыстыру.

Кез келген мәрте амалдарды орындағаннан кейін олар тоқтайды да, барлық пайда болған кесінділер бастапқы ретімен біріктіріліп, жаңа алмастыруды құрайды.

White санауды жақсы көреді. Ол — олар барлығы қанша әртүрлі алмастыру ала алады екен деп ойланады.

Нәтиже өте үлкен болуы мүмкін болғандықтан, сізге тек жауапты $998\,244\,353$ модулі бойынша табу жеткілікті.

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

Кірістің бірінші жолында алмастырудың ұзындығын білдіретін бір бүтін сан $n$ ($1 \le n \le 500$) берілген.

Екінші жолда алмастырудың өзін білдіретін $n$ бүтін сан $a_1, a_2, \cdots, a_n$ ($1 \le a_i \le n$) берілген. $\{a_n\}$ алмастыру екеніне кепілдік беріледі.

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

Олар ала алатын әртүрлі алмастырулар санын $998\,244\,353$ модулі бойынша білдіретін бір бүтін санды шығарыңыз.

Мысалдар

Кіріс

4
1 4 2 3

Шығыс

10

Кіріс

7
5 1 4 2 6 3 7

Шығыс

340

Ескертпе

Бірінші мысалда олар ала алатын барлық мүмкін алмастырулар төмендегідей:

$(1234), (1243), (1423), (1432), (4123), (4132), (4213), (4231), (4312), (4321)$

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.