种树
时间限制:1秒 内存限制:256M
【题目描述】
一条街的一边有几座房子。因为环保原因居民想要在路边种些树。路边的地区被分割成块,并被编号成 \(1..N\)。每块为一个单位尺寸大小并最多可种一棵树。每个居民想在门前种些树并指定了三个号码 \(B,E,T\)。这三个数表示该居民想在第 \(B\) 块到第 \(E\) 块之间最少种T棵树。当然,\(B≤E\),居民必须记住在指定区不能种多于区块数的树,所以 \(T≤E-B+l\)。居民们想种树的各自区域可以交叉。你的任务是求出能满足所有要求的最少的树的数量。
【输入格式】
第一行包含数据 \(N\),区域的个数;
第二行包含 \(H\),房子的数目;
下面的 \(H\) 行描述居民们的需要:\(B\ E\ T(T≤E-B+1)\)。
【输出格式】
输出最少种树的数量。
【输入输出样例】
Input
9
4
1 4 2
4 6 2
8 9 2
3 5 2
Output
5
【数据限制】
对于 \(100\%\) 的数据,\(1≤N≤50000\),\(1≤H≤5000\),\(1≤B≤E≤N\)。
【来源】
Mr.he