#T250504. 收集魔法元素

收集魔法元素

题目描述:

在神秘的魔法大陆上,巫师小悠要收集 N 种魔法元素,编号从 1 到 N。大陆上存在 M 个魔法生物, 每个生物守护着一段连续编号的元素区间:第 i 个生物守护区间 [l, r](1 ≤ l ≤ r ≤ N),且 任意两个生物守护的元素区间不完全相同。每个生物都有 能量值 w(1 ≤w ≤10^6),小悠击败它们 即可获取该能量值。 小悠需要规划挑战生物的顺序,组成序列 c1, c2, …, cn 。挑战规则如下:当挑战第 ci 个生物时, 其守护的元素区间 [l,r] 内必须至少有一个元素未被之前挑战的生物吸收(每个生物被击败后会吸收 其守护区间内的所有剩余元素)。 请帮小悠计算,在满足规则的情况下,通过挑战生物能获得的最大能量总和是多少。

输入格式:

第一行:两个正整数 N 和 M,分别表示魔法元素总数和魔法生物数量。 接下来 M 行:每行三个正整数 w、l、r,依次表示第 i 个生物的能量值、守护区间左端点、守护区间右端点。

输出格式:

输出一个整数,表示满足规则的挑战序列能获得的最大能量总和。

样例:

2 2
100 1 2
100 1 1
200
50 20
204414 14 38
862492 2 25
361742 13 31
324259 16 42
489157 9 48
624174 17 47
871391 23 25
747770 15 47
746949 5 19
266344 13 45
48574 36 38
44042 19 40
95178 1 12
787097 1 42
631770 14 48
368457 19 25
63010 26 39
291017 33 38
333941 1 23
534191 9 14
7511349

提示

对于100%的数据,满足1<=n<=300,1<=m<=n*(n-1)/2,1<=l,r<=n,1<=w<=10^6。