LG-P1250. [洛谷 P1250] 种树

提交2 通过2
通过率100%
时间限制1000ms
内存限制32MiB

题目描述

题目描述

某条街被划为 n 条路段,这 n 条路段依次编号为1…n1\dots n。每个路段最多可以种一棵树。现在居民们给出了 h 组建议,每组建议包含三个整数 b,e,t,表示居民希望在路段 b 到 e 之间至少要种t棵树。这些建议所给路段的区间可以交叉。请问:如果要满足所有居民的建议,至少要种多少棵树。

输入描述

第一行为n,表示路段数。 第二行为h,表示建议数。 下面 h 行描述一条建议:b,e,t,用一个空格分隔。

输出描述

输出只有一个数,为满足所有居民的建议,所需要种树的最少数量。

示例1

输入

9
4
1 4 2
4 6 2
8 9 2
3 5 2

输出

5

备注

输入样例 #2

9
4 
1 4 2 
4 6 1 
8 9 2 
3 5 2 

输出样例 #2

4

输入样例 #3

1
1
1 1 1

输出样例 #3

1

数据范围

30%30\% 的数据满足 0<n≤10000 < n \le 1000 , 0<h≤5000 < h \le 500 ; 100%100\% 的数据满足 0<n≤3×1040 < n \le 3 \times 10^4, h≤5000h \le 5000 , 0<b≤e≤3×1040 < b \le e \le 3 \times 10^4 , t≤e−b+1t \le e - b + 1 。