[Balkan2009]reading
时间限制:25s 空间限制:128MB
题目描述
定义任意两小写字母间有一个差别值X(1<=X<=5),假设26个小写字母随意排列构成的都是单词,则对于一个单词可算出差别总和为sum,例如:
假设X[e-l]=3,X[l-y]=2,X[l-l]=1,则单词“elly”的sum值为3+1+2=6。
现在给出N和M,N表示sum值的上限(可以等于N),M表示已知关系个数,接下来M行,每行三个数L1,L2,F,表示字母L1到L2和L2到L1的X值都为F,若未提及的字母对则默认它们的X值为1,则问总共可形成多少符合条件的单词?
输入格式
第一行N,M (1<=N<=1000 000 000)
之后M行,每行三个数L1,L2,F,保证每对字母最多出现一次。
输出格式
符合条件的单词总数 mod 1000 000 007 的结果。
数据范围
50% N<=1000 000
100% N<=1000 000 000 1<=F<=5
样例输入
20 10 e l 3 e o 1 o n 2 o r 4 r a 4 i n 5 e n 2 n t 3 t w 3 w i 5
样例输出
470059518
提示
没有写明提示
题目来源
没有写明来源