#P11687. [JOIGST 2024] 年轮蛋糕 2 / バームクーヘン 2

[JOIGST 2024] 年轮蛋糕 2 / バームクーヘン 2

题目背景

译自 日本情報オリンピック 第4回女性部門 (JOIG 2023/2024) 春季トレーニング R1T2。

图:年轮蛋糕。バームクーヘン = baumkuchen,即树木(德语 baum)+ 蛋糕(德语 kuchen)。图源百度百科。

题目描述

葵计划举办一场派对,共有 KK 人参加,编号 1K1\sim K

众人将分享一个环形的年轮蛋糕。蛋糕的圆周上均匀刻有 K×LK \times L 个切缝,蛋糕只能沿切缝分割。

将切缝按顺时针编号 1K×L1\sim K\times L,切缝 ii 和切缝 (imodKL)+1\left(i\bmod KL\right) +1 之间的区域叫做第 ii 个部分。

分割规则如下:

  1. 选择 KK 个切缝切割,将蛋糕分为 KK 块,每个块包含恰好 LL连续的部分。
  2. KK 块蛋糕分给 KK 个人,要求每个人都恰好分到一块蛋糕。

现在有 QQ 条限制,第 jj 条限制要求第 XjX_j 个部分必须被分配给第 YjY_j 个人。保证每个部分 XjX_j 只会在限制中出现一次。

对于 i=1,2,,Qi=1,2,\cdots,Q,求出有多少种切蛋糕和分蛋糕的方案满足前 ii 条限制,对给定的素数 PP 取模。

两个方案不同,当且仅当存在一个人,他在这两个方案中拿到了不同的蛋糕块。

输入格式

如下所示:

KK LL
PP
QQ X1X_1 Y1Y_1
X2X_2 Y2Y_2
\vdots
XQX_Q YQY_Q

输出格式

输出 QQ 行,每行一个整数,表示满足前 ii 条限制的方案数量对 PP 取模后的结果。

3 2
998244353
2
1 2
6 2
4
2
8 10
304623133
10
8 8
6 8
51 1
36 5
10 7
38 5
68 3
57 4
76 3
19 2
50400
40320
5760
960
48
48
12
0
0
0
10 8
446958661
10
26 5
49 9
37 6
10 1
15 3
29 5
69 2
2 1
25 5
12 1
2903040
322560
40320
5760
600
240
48
0
0
0

提示

样例解释

样例 11 解释

i=1i=1 时,要求将包含第 11 个部分的块分给第 22 个人,有 44 个方案。举例:

  1. 沿切缝 113355 切割蛋糕;
  2. 分配方式:
    • 11 个人:第 3,43,4 个部分;
    • 22 个人:第 1,21,2 个部分;
    • 33 个人:第 5,65,6 个部分。

i=2i=2 时,在 i=1i=1 的基础上额外要求将包含第 66 个部分的块分配给第 22 个人,有 22 个方案。举例:

  1. 沿切缝 224466 切割蛋糕;
  2. 分配方式:
    • 11 个人:第 4,54,5 个部分;
    • 22 个人:第 6,16,1 个部分;
    • 33 个人:第 2,32,3 个部分。

该样例满足所有子任务的限制。

样例 22 解释

该样例满足所有子任务的限制。

样例 33 解释

该样例满足子任务 262\sim 6 的限制。

数据范围

  • 2K2×1052\le K\le 2\times 10^5
  • 1L2×1051\le L\le 2\times 10^5
  • 108<P<10910^8\lt P\lt 10^9
  • PP 是素数;
  • 1Q2×1051\le Q\le 2\times 10^5
  • 1jQ\forall 1\le j\le Q1XjKL1\le X_j\le KL
  • 1j<kQ\forall 1\le j\lt k\le QXjXkX_j\neq X_k
  • 1jQ\forall 1\le j\le Q1Yjk1\le Y_j\le k
  • 输入的值全部是整数。

子任务

  1. (13pts)K8K\le 8L10L\le 10Q10Q\le 10
  2. (14pts)K100K\le 100L100L\le 100Q100Q\le 100
  3. (18pts)K400K\le 400L400L\le 400Q400Q\le 400
  4. (17pts)K2500K\le 2\, 500L2500L\le 2\, 500Q2500Q\le 2\, 500
  5. (28pts)K40K\le 40
  6. (10pts)无额外限制。

翻译来自 DeepSeek-R1 并经过人工微调。