P23485 [AtCoder] RGB Sequence
提高+
题目描述

Problem Statement

There are N squares arranged in a row.
The squares are numbered 1, 2, ..., N, from left to right.
Snuke is painting each square in red, green or blue.
According to his aesthetic sense, the following M conditions must all be satisfied.
The i-th condition is:

  • There are exactly x_i different colors among squares l_i, l_i + 1, ..., r_i.

In how many ways can the squares be painted to satisfy all the conditions?
Find the count modulo 10^9+7.

Input

Input is given from Standard Input in the following format:
N M
l_1 r_1 x_1
l_2 r_2 x_2
:
l_M r_M x_M

Output

Print the number of ways to paint the squares to satisfy all the conditions, modulo 10^9+7.

Constraints

  • 1 ≤ N ≤ 300
  • 1 ≤ M ≤ 300
  • 1 ≤ l_i ≤ r_i ≤ N
  • 1 ≤ x_i ≤ 3

Sample Input 1

3 1
1 3 3

Sample Output 1

6

The six ways are:

  • RGB
  • RBG
  • GRB
  • GBR
  • BRG
  • BGR

where R, G and B correspond to red, green and blue squares, respectively.

Sample Input 2

4 2
1 3 1
2 4 2

Sample Output 2

6

The six ways are:

  • RRRG
  • RRRB
  • GGGR
  • GGGB
  • BBBR
  • BBBG

Sample Input 3

1 3
1 1 1
1 1 2
1 1 3

Sample Output 3

0

There are zero ways.

Sample Input 4

8 10
2 6 2
5 5 1
3 5 2
4 7 3
4 4 1
2 3 1
7 7 1
1 5 2
1 7 3
3 4 2

Sample Output 4

108

输入格式

见题面 Input 部分

输出格式

见题面 Output 部分

样例输入
3 1 1 3 3
样例输出
6