#P13022. [AGC039F] Min Product Sum

    ID: 12206 传统题 6000ms 1024MiB 尝试: 1 已通过: 1 难度: 9 上传者: 标签>CF2800动态规划计数DP组合数学数学

[AGC039F] Min Product Sum

题目描述

对于一个 NNMM 列的网格,每个格子都可以填写一个 11KK 之间的整数。对于所有 KNMK^{NM} 种填写方式,计算以下值,并将这些值的总和对 DD 取模:

  • 对于每个格子,找到与它在同一行或同一列(包括它自身)的所有格子中所填写的整数的最小值。将所有 NMNM 个格子的最小值相乘,得到一个值。

请输出所有填写方式下上述值的总和对 DD 取模的结果。

输入格式

输入为一行,包含四个整数:

NN MM KK DD

输出格式

输出所有 KNMK^{NM} 种填写方式下上述值的总和对 DD 取模的结果。

输入输出样例 #1

输入 #1

2 2 2 998244353

输出 #1

35

输入输出样例 #2

输入 #2

2 3 4 998244353

输出 #2

127090

输入输出样例 #3

输入 #3

31 41 59 998244353

输出 #3

827794103

说明/提示

限制条件

  • 1N,M,K1001 \leq N, M, K \leq 100
  • 108D10910^8 \leq D \leq 10^9
  • N,M,K,DN, M, K, D 均为整数
  • DD 是质数

样例解释 1

使 NMNM 个格子的积为 1616 的填写方式有 11 种,积为 22 的填写方式有 44 种,积为 11 的填写方式有 1111 种。