用开头排序也可以啊,只是要倒着遍历
```
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<algorithm>
using namespace std;
struct node{
int l,r,v;
}line[30030];int vis[30030]={0};
inline bool pd(node a,node b){return a.l<b.l;}
int main()
{
int n,m,ans=0;
scanf("%d%d",&n,&m);
for(int i=1;i<=m;i++)
scanf("%d%d%d",&line[i].l,&line[i].r,&line[i].v);
sort(line+1,line+1+m,pd);
for(int i=m;i>=1;i--){
int k=0;
for(int j=line[i].l;j<=line[i].r;j++)
if(vis[j]==1)
k++;
int p=line[i].l-1;
while(k<line[i].v)
{
if(!vis[++p]){
ans++;
k++;
vis[p]=1;
}
}
}
printf("%d",ans);
return 0;
}
by Freddie @ 2018-12-18 16:40:42
@[Star_Constant](/space/show?uid=46303) 大佬%%%
by AFO蒟蒻选手 @ 2019-01-31 17:14:58
@[wyf666](/space/show?uid=113917)
没有没有
by Freddie @ 2019-03-09 07:42:25