CF1909I.Short Permutation Problem

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Xomu - Last Dance

You are given an integer nn .

For each (m,k)(m, k) such that 3mn+13 \leq m \leq n+1 and 0kn10 \leq k \leq n-1 , count the permutations of [1,2,...,n][1, 2, ..., n] such that pi+pi+1mp_i + p_{i+1} \geq m for exactly kk indices ii , modulo 998244353998\,244\,353 .

输入格式

The input consists of a single line, which contains two integers nn , xx ( 2n40002 \leq n \leq 4000 , 1x<10000000071 \leq x < 1\,000\,000\,007 ).

输出格式

Let am,ka_{m,k} be the answer for the pair (m,k)(m, k) , modulo 998244353998\,244\,353 .

Let $$$$\large S = \sum_{m=3}^{n+1} \sum_{k=0}^{n-1} a_{m,k}x^{mn+k}\phantom{0}. $$

Output a single line with an integer: SS modulo 1,000,000,0071\\,000\\,000\\,007 .

Note that using two different modulos is intentional. We want you to calculate all the a_m,ka\_{m,k} modulo 998,244,353998\\,244\\,353 , then treat them like integers in the range \[0, 998\\,244\\,352\] , and hash them modulo 1,000,000,0071\\,000\\,000\\,007$$.

输入输出样例

  • 输入#1

    3 2

    输出#1

    77824
  • 输入#2

    4 1000000000

    输出#2

    30984329
  • 输入#3

    8 327869541

    输出#3

    85039220
  • 输入#4

    4000 1149333

    输出#4

    584870166

说明/提示

In the first test case, the answers for all (m,k)(m, k) are shown in the following table:

k=0k = 0 k=1k = 1 k=2k = 2 m=3m = 3 00 00 66 m=4m = 4 00 44 22 - The answer for (m,k)=(3,2)(m, k) = (3, 2) is 66 , because for every permutation of length 33 , ai+ai+13a_i + a_{i+1} \geq 3 exactly 22 times.

  • The answer for (m,k)=(4,2)(m, k) = (4, 2) is 22 . In fact, there are 22 permutations of length 33 such that ai+ai+14a_i + a_{i+1} \geq 4 exactly 22 times: [1,3,2][1, 3, 2] , [2,3,1][2, 3, 1] .

Therefore, the value to print is 290+2100+2116+2120+2134+2142778240(mod01000000007)2^9 \cdot 0 + 2^{10} \cdot 0 + 2^{11} \cdot 6 + 2^{12} \cdot 0 + 2^{13} \cdot 4 + 2^{14} \cdot 2 \equiv 77\,824 \phantom{0} (\text{mod} \phantom{0} 1\,000\,000\,007) .

In the second test case, the answers for all (m,k)(m, k) are shown in the following table:

k=0k = 0 k=1k = 1 k=2k = 2 k=3k = 3 m=3m = 3 00 00 00 2424 m=4m = 4 00 00 1212 1212 m=5m = 5 00 44 1616 44 - The answer for (m,k)=(5,1)(m, k) = (5, 1) is 44 . In fact, there are 44 permutations of length 44 such that ai+ai+15a_i + a_{i+1} \geq 5 exactly 11 time: [2,1,3,4][2, 1, 3, 4] , [3,1,2,4][3, 1, 2, 4] , [4,2,1,3][4, 2, 1, 3] , [4,3,1,2][4, 3, 1, 2] .

In the third test case, the answers for all (m,k)(m, k) are shown in the following table:

k=0k = 0 k=1k = 1 k=2k = 2 k=3k = 3 k=4k = 4 k=5k = 5 k=6k = 6 k=7k = 7 m=3m = 3 00 00 00 00 00 00 00 4032040320 m=4m = 4 00 00 00 00 00 00 1008010080 3024030240 m=5m = 5 00 00 00 00 00 14401440 1728017280 2160021600 m=6m = 6 00 00 00 00 480480 86408640 2160021600 96009600 m=7m = 7 00 00 00 9696 34563456 1641616416 1689616896 34563456 m=8m = 8 00 00 4848 21602160 1296012960 1824018240 64806480 432432 m=9m = 9 00 1616 11521152 96489648 1868818688 96489648 11521152 1616

首页