#P5103. 「FJSC2018TGD10T1」作业

「FJSC2018TGD10T1」作业

Description

小z是某高中的一名学生。他在欢乐地度过暑假的时候,突然发现他有些作业的截止时间快到了。但是小z还没开始做。如果一个作业,小z提交时间超过截止时间 XX 天,那么他就会被扣掉 XX 分。对于每个作业,小z要花费一天或若干天来完成。他不能同时完成多个作业且只有当前作业完成了,他才会开始另一个新的作业。小z不想被扣太多分,所以他想知道如果规划完成作业的顺序使得被扣掉的分最少。

Input Format

输入多组数据。

输入第一行为一个整数 TT,表示数据组数。

对于每组数据,第一行为一个整数 nn,表示课程数目。

接下来 nn 行,每行包含一个字符串 SS (不多于 5050 个字符)代表课程名称和两个整数 DD (截止时间)和 CC(完成作业需要时间)

Output Format

对于每组数据,第一行输出最少扣分。

接下来 nn 行,输出完成作业的顺序。

Sample

样例输入1

2 
3 
Computer 3 3 
English 20 1 
Math 3 2 
3
Computer 3 3 
English 6 3 
Math 6 3

样例输出1

2 
Computer 
Math 
English 
3 
Computer 
English 
Math

Hint

对于30%30\%的数据: n10n \le 10

对于60%60\%的数据: n17n \le 17

对于100%100\%的数据: n20n \le 20, T3T \le 3