#P1021. 咒术探索者

咒术探索者

题目描述

泽拉斯诺坦纳多是极北之地的一座古城,每到暖季,都会有一大批探索者来到这里,探索地底深处未知的宝藏。

@zls_XICK 是一名初来乍到的探索者,意外之下发现了一个塌陷的洞穴,洞穴里整齐地插着火把,木柄略有腐朽,深处是一个宽阔的空间。

空间中心摆着 nn 个玄武岩和一个宝箱,每个玄武岩上分别刻着一位阿拉伯数字 a1a_1ana_n,这些数字都是一位正整数,前辈留给他的皮质笔记上面有 mm 条咒语,可以用来改变这些数字,这 mm 条咒语无需按顺序念出。

很显然,@zls_XICK 需要用这些咒语来改变玄武岩上的数字以打开宝箱,但是他没有什么探索经验,不知道怎样才能最快找到正确的数字组合,所以他决定暴力枚举尝试每种组合。

mm 条咒语分别由 typei,xi,yitype_i,x_i,y_i 三个要素组成,其中 typeitype_i 包含 1100 两种,其规则如下:

  • typeitype_i11,表示此咒语可以把数字xix_i 的任意一块玄武岩数字变为 yiy_i

  • typeitype_i00,表示此咒语可以把xix_i玄武岩数字变为 yiy_i

  • typeitype_i11 的咒语可以念无数次,typeitype_i00 的咒语至多且必须念一次。

现在 @zls_XICK 需要预先知道最后的数字组合可以有多少种以防止念咒语累死,当然,这里的组合也包括原来的组合,也就是还没念任何咒语时的组合。

输入格式

输入共 m+2m + 2 行。

第一行 22 个整数 nnmm,含义如题意。

第二行 nn 个整数 a1a_1ana_n,表示玄武岩上原来的数字。

随后 mm 行,每行三个整数 typei,xi,yitype_i,x_i,y_i,表示第 ii 条咒语的三个要素。

输出格式

一行一个整数,表示玄武岩上的数字的组合有几种。

3 3
4 5 6
1 5 6
0 1 5
1 6 3
19

数据规模与约定

对于 20%20 \% 的数据满足 typei=0type_i = 0

对于 100%100 \% 的数据满足 1n1501 \le n \le 1501m1061 \le m \le 10^61ai91 \le a_i \le 9type[0,1]type \in \left[ 0, 1 \right]