O(n2)卡常AC,数据有点水
#include <iostream>
#include <algorithm>
using namespace std;
const int N=1e5+1000;
int n,m,e;
long long f[N];
struct node{
int l,r,val;
bool operator<(node v){
return r<v.r;
}
}a[N];
int main(){
scanf("%d%d%d",&n,&m,&e);
for(int i=1;i<=n;i++) scanf("%d%d%d",&a[i].l,&a[i].r,&a[i].val);
sort(a+1,a+n+1);
for(int i=m;i<=e;i++) f[i]=2e18;
for(int i=1;i<=n;i++) for(int j=a[i].l-1;j<a[i].r;j++) f[a[i].r]=min(f[a[i].r],f[j]+a[i].val);
if(f[e]==2e18) printf("-1");
else printf("%lld",f[e]);
return 0;
}