atcoder#AGC039F. [AGC039F] Min Product Sum

[AGC039F] Min Product Sum

题目描述

N N M M 列のマス目の全てのマスに 1 1 以上 K K 以下の整数を書き込む方法 KNM K^{NM} 通りすべてに対して以下の値を求め、 それらすべての総和を D D で割ったあまりを求めてください。

  • NM NM 個の各マスに対し、それと同じ行あるいは同じ列のマス (自分自身を含む) に書かれた整数の最小値を求め、それら NM NM 個すべての積を取って得られる値

输入格式

入力は以下の形式で標準入力から与えられる。

N N M M K K D D

输出格式

KNM K^{NM} 個の値の総和を D D で割ったあまりを出力せよ。

题目大意

  • 有一个大小为 N×MN \times M 的矩阵。矩阵中每个数的取值都是 [1,K][1, K]
  • 对于一个矩阵,定义函数 f(x,y)f(x,y) 为:第 xx 行和第 yy 列的一共 N+M1N + M - 1 个数中的最小值。
  • 对于一个矩阵,定义其权值为 x=1Ny=1Mf(x,y)\prod_{x=1}^{N}\prod_{y=1}^{M}f(x,y)
  • 你需要求出,对于所有 KNMK^{NM} 种矩阵,每个矩阵的权值和对 DD 取模的结果。
  • 1N,M,K1001 \leq N, M, K \leq 100108D10910^8 \leq D \leq 10^9,保证 DD 为质数。
2 2 2 998244353
35
2 3 4 998244353
127090
31 41 59 998244353
827794103

提示

制約

  • 1  N,M,K  100 1\ \leq\ N,M,K\ \leq\ 100
  • 108  D  109 10^8\ \leq\ D\ \leq\ 10^9
  • N,M,K,D N,M,K,D は整数である
  • D D は素数である

Sample Explanation 1

NM NM 個の値の積が 16 16 になる書き込み方が 1 1 通り、2 2 になる書き込み方が 4 4 通り、1 1 になる書き込み方が 11 11 通りあります。