#L2965. 「COCI 2010.02」PALACINKE

    ID: 5833 传统题 1000ms 256MiB 尝试: 1 已通过: 1 难度: 10 上传者: 标签>矩阵快速幂、容斥原理、图论、动态规划、位运算

「COCI 2010.02」PALACINKE

题目描述

译自 COCI 2010.02 T6. PALACINKE

安娜有几个同学过来吃可丽饼,然而安娜忘了这事。当安娜发现时,留给她烤可丽饼的时间只剩下 TT 分钟了。她马上跑出去采购四样原材料:面粉 B,鸡蛋 J,牛奶 M 和果酱 P。

安娜周边有 NN 个路口,编号为 1N1\ldots N,还有 MM 条单向道路连接它们。已知每条路上的商店会卖哪些材料,保证每条路上的商店至少会卖(上述四种材料中)的一种。

安娜穿过一条道路时,如果她进入了这条路上的商店(不一定买东西,她可能只是去比比价格),则她通过这条路耗时 22 分钟,否则耗时 11 分钟。

安娜需要在 TT 分钟内采购到四种原材料。请问她有多少种「采购方式」,答案对 55575557 取模。采购方式包含了她经过的结点的次序,以及她在每条路上买不买材料,但不计她在哪个商店买了什么。

例如,当 T=7T=7 时,在上图中有 55 种采购方式:

1 min 2 min 3 min 4 min 5 min 6 min 7 min
1→3 3→商店→4 4→商店→1
1→商店→2 2→商店→4
1→商店→3 3→商店→4
4→5 5→商店→1
1→3 4→商店→5

输入格式

第一行:N,MN,M。 接下来 NN 行,每行两个整数 u,vu,v 和一个仅可能包含 BJMP 四种字符的字符串 ssu,vu,v 表示一条单向道路,ss 表示这条道路上的商店会卖哪些材料。保证没有两条单向道路相同(但可能有两条连接的结点相同,而方向相反的道路)。 第 N+2N+2 行:TT


输出格式

一行,一个答案,表示安娜有多少种采购方式。


样例 1

输入:

3 3
1 2 BMJ
2 3 MJP
3 1 JPB
5

输出:

3

样例 2

输入:

3 4
1 2 B
2 1 P
1 3 J
3 1 M
8

输出:

2

样例 3

输入:

5 7
1 2 B
2 4 M
1 3 J
3 4 MB
4 1 JP
4 5 J
5 1 P
7

输出:

5

数据范围与提示

1N25,1M500,1T109.1\le N\le 25, 1\le M\le 500, 1\le T\le 10^9.

保证没有两条单向道路相同(但可能有两条连接的结点相同,而方向相反的道路)。