TopCoder

Caido
主唱太拼命了

User's AC Ratio

100.0% (4/4)

Submission's AC Ratio

100.0% (4/4)

Tags

Description

台大 ICPC 傳奇強隊的一大支柱蛋餅,在休假期間去日本玩耍。
在東大裡面購買紀念品的時候,忽然看見傳奇強者 marooonrk 在東大合作社留下的謎語:

Jlyhq wzr 0 vhtxhqfh D, E ri ohqjwk Q.
Rphohw fdq gr wkh iroorzlqj rshudwlrq dw prvw N wlphv.

  1. Slfn wzr lqwhjhu O, U.
  2. iru doo l vxfk wkdw O <= l <= U: dgg rqh wr hlwkhu D_l ru E_l

Qrz kh zrqghu, krz pdqb gliihuhqw uhvxowv fdq kh pdgh iurp deryh frqvwuxfwlrq.
Qrwlfh wkdw wzr uhvxowv duh frqvlghuhg gliihuhqw li dqg rqob li wkhuh lv vrph l vxfk wkdw D_l != D'_l ru E_l != E'_l

在 crytpo 也是一大支柱的蛋餅,很快的就了解了題目的意思:

給定兩個長度為 $N$ 的序列 $A, B$,一開始 $A_i = B_i = 0(1 \le i \le N)$。
接下來蛋餅可以做以下操作至多 $K$ 次

  1. 選定一個區間 $[L, R] $$(1 \le L \le R \le N)$
  2. 對於 $i$ 從 $L$ 到 $R$,將 $A_i$ 加一或是將 $B_i$ 加一。 注意到每個 $i$ 都可以分別決定要選擇 $A$ 序列或是 $B$ 序列。

最後,蛋餅會按照順序將 $A_1,A_2,A_3,\ldots,A_N,B_1,B_2,B_3,\ldots,B_N$ 印在一張白紙上。

請問用上述的方法,總共能夠製造出多少種不同的白紙呢?

(兩張白紙被視為不同若且唯若存在 $i$ 使得白紙上面的 $A_i \ne A'_i$ 或是 $B_i \ne B'_i$ )

因為答案實在是太大了,請輸出答案除以 $M$ 的餘數即可。

Input Format

在第一行共有三個正整數 $N, K, M$ 以一個空白隔開。

  • $1 \le N \le 500$
  • $1 \le K \le 400$
  • $1 \le M \le 10^ 9 + 7$

Output Format

請輸出一個整數代表答案。

假設總共有 $X$ 種不同的白紙可以被製造出來,那你應該輸出 $F$,其中 $0 \le F < M$ 而且 $F \equiv X \text{ mod } M$

Sample Input 1

2 1 100

Sample Output 1

9

Sample Input 2

2 2 100

Sample Output 2

36

Sample Input 3

328 244 1000000007

Sample Output 3

773241649

Hints

Problem Source

IOICamp 2023 Day5 pB

Subtasks

No. Testdata Range Constraints Score
1 0~2 範例測資 0
2 0, 3~7 $K = 1$ 5
3 0~1, 3~17 $1 \leq K \leq 3$ 10
4 0~1, 3~27 $1 \leq K \leq 50$ 50
5 0~41 無其他限制 35

Testdata and Limits

No. Time Limit (ms) Memory Limit (VSS, KiB) Output Limit (KiB) Subtasks
0 2000 524288 65536 1 2 3 4 5
1 2000 524288 65536 1 3 4 5
2 2000 524288 65536 1 5
3 2000 524288 65536 2 3 4 5
4 2000 524288 65536 2 3 4 5
5 2000 524288 65536 2 3 4 5
6 2000 524288 65536 2 3 4 5
7 2000 524288 65536 2 3 4 5
8 2000 524288 65536 3 4 5
9 2000 524288 65536 3 4 5
10 2000 524288 65536 3 4 5
11 2000 524288 65536 3 4 5
12 2000 524288 65536 3 4 5
13 2000 524288 65536 3 4 5
14 2000 524288 65536 3 4 5
15 2000 524288 65536 3 4 5
16 2000 524288 65536 3 4 5
17 2000 524288 65536 3 4 5
18 2000 524288 65536 4 5
19 2000 524288 65536 4 5
20 2000 524288 65536 4 5
21 2000 524288 65536 4 5
22 2000 524288 65536 4 5
23 2000 524288 65536 4 5
24 2000 524288 65536 4 5
25 2000 524288 65536 4 5
26 2000 524288 65536 4 5
27 2000 524288 65536 4 5
28 2000 524288 65536 5
29 2000 524288 65536 5
30 2000 524288 65536 5
31 2000 524288 65536 5
32 2000 524288 65536 5
33 2000 524288 65536 5
34 2000 524288 65536 5
35 2000 524288 65536 5
36 2000 524288 65536 5
37 2000 524288 65536 5
38 2000 524288 65536 5
39 2000 524288 65536 5
40 2000 524288 65536 5
41 2000 524288 65536 5