#AT1779. E - Permutation

E - Permutation

E - 排列

得分:500分

问题描述

打印符合以下条件的 数列$a$ 的数量,数列$a$ 是$(1, 2, 3, \dots, N)$的某个排列:

  • 对于每个满足 $1 \le i \le M$ 的整数,$a_1, a_2, a_3, \dots, a_{X_i}$ 中至多 $Z_i$ 个数小于等于 $Y_i$ 。

限制

  • $2 \le N \le 18$
  • $0 \le M \le 100$
  • $1 \le X_i \lt N$
  • $1 \le Y_i \lt N$
  • $0 \le Z_i \lt N$
  • 输入中的所有值都是整数。

输入

输入以以下格式从标准输入给出:

NN MM

X1X_1 Y1Y_1 Z1Z_1

X2X_2 Y2Y_2 Z2Z_2

X3X_3 Y3Y_3 Z3Z_3

\hspace{23pt} \vdots

XMX_M YMY_M ZMZ_M

输出

输出答案。


3 1
2 2 1
4

满足条件的4个数列$a$是:

  • $(1, 3, 2)$
  • $(2, 3, 1)$
  • $(3, 1, 2)$
  • $(3, 2, 1)$

$(1, 2, 3)$和$(2, 1, 3)$不满足条件,因为在$a_1, a_2$中它们都有两个不大于2的数。


5 2
3 3 2
4 4 3
90

18 0
6402373705728000