#205. 清理班次2

清理班次2

题目描述

农夫约翰雇佣他的N\red N头奶牛帮他进行牛棚的清理工作。

他将全天分为了很多个班次,其中第M\red M个班次到第E\red E个班次(包括这两个班次)之间必须都有牛进行清理。

N\red N头牛中,第 i\red i 头牛可以从第ai\red {a_i}个班次工作到第bi\red {b_i}个班次,同时,它会索取ci\red {c_i}的佣金。

请你安排一个合理的清理班次,使得[M,E]\red {[M,E]}时间段内都有奶牛在清理,并且所需支付给奶牛的报酬最少。

输入格式

1\red 1行:包含三个整数N\red NM\red ME\red E

2..N+1\red {2..N+1}行:第i+1\red {i+1}行包含三个整数ai\red {a_i} ,bi\red {b_i} ,ci\red {c_i}

输出格式

输出一个整数,表示所需的最少佣金。

如果无法做到在要求时间段内都有奶牛清理,则输出1\red{-1}

样例

输入样例

3 0 4
0 2 3
3 4 2
0 0 1

输出样例

5

提示

1N10000,\red {1≤N≤10000,}

0M,E86399,\red {0≤M,E≤86399,}

MaibiE,\red {M≤a_i ≤b_i ≤E,}

0ci500000\red {0≤c_i≤500000}