#DP1091. 奶牛序列

奶牛序列

题目描述

Farmer John 有 MM 头奶牛,为了方便,编号为 1,,M1,\dots,M。这些奶牛平时都吃青草,但是喜欢偶尔换换口味。Farmer John 一天烤了 NN 个派请奶牛吃,这 NN 个派编号为 1,,N1,\dots,N。第 ii 头奶牛喜欢吃编号在 [li,ri]\left[ l_i,r_i \right] 中的派(包括两端),并且没有两头奶牛喜欢吃相同范围的派。第 ii 头奶牛有一个体重 wiw_i,这是一个在 [1,106]\left[ 1,10^6 \right] 中的正整数。

Farmer John 可以选择一个奶牛序列 c1,c2,,cKc_1,c_2,\dots,c_K,并让这些奶牛按这个顺序轮流吃派。不幸的是,这些奶牛不知道分享!当奶牛 吃派时,她会把她喜欢吃的派都吃掉——也就是说,她会吃掉编号在 [lci,rci][l_{c_i},r_{c_i}] 中所有剩余的派。Farmer John 想要避免当轮到一头奶牛吃派时,她所有喜欢的派在之前都被吃掉了这样尴尬的情况。因此,他想让你计算,要使奶牛按 c1,c2,,cKc_1,c_2,\dots,c_K 的顺序吃派,轮到这头奶牛时她喜欢的派至少剩余一个的情况下,这些奶牛的最大可能体重(wc1+wc2++wcKw_{c_1}+w_{c_2}+\ldots+w_{c_K})是多少。

输入格式

第一行包含两个正整数 N,MN,M

接下来 MM 行,每行三个正整数 wi,li,riw_i,l_i,r_i

输出格式

输出对于一个合法的序列,最大可能的体重值。

样例 #1

样例输入 #1

2 2
100 1 2
100 1 1

样例输出 #1

200

提示

样例解释

在这个样例中,如果奶牛 11 先吃,那么奶牛 22 就吃不到派了。然而,先让奶牛 22 吃,然后奶牛 11 只吃编号为 22 的派,仍可以满足条件。

数据范围

对于全部数据,$1 \le N \le 300,1 \le M \le \dfrac{N(N-1)}{2},1 \le l_i,r_i \le N,1 \le w_i \le 10^6$。