#agc039f. [agc039_f]Min Product Sum

[agc039_f]Min Product Sum

题目描述

给定一个NtimesMN \\times M大小的方格,每个方格内都有一个范围在11KK之间(包括11KK)的整数。对于这KNMK^{NM}种将整数填入方格的方式,按照以下定义计算每种方式的值,并计算所有这些值的总和,取模DD

  • 对于每个方格,找到该方格所在行和列上的N+M1N+M-1个整数中的最小值。网格的值定义为所有这NMNM个最小值的乘积。

约束条件

  • 1leqN,M,Kleq1001 \\leq N,M,K \\leq 100
  • 108leqDleq10910^8 \\leq D \\leq 10^9
  • N,M,KN,M,KDD为整数。
  • DD是一个质数。

输入

输入通过标准输入给出,格式如下:

NN MM KK DD

输出

打印所有KNMK^{NM}个值的总和,取模DD后的结果。


示例输入 1

2 2 2 998244353

示例输出 1

35

存在11种填充整数的方式,使得NMNM个值的乘积为1616,存在44种填充方式,使得NMNM个值的乘积为22,存在1111种填充方式,使得NMNM个值的乘积为11


示例输入 2

2 3 4 998244353

示例输出 2

127090

示例输入 3

31 41 59 998244353

示例输出 3

827794103