程序能力实训(BY) 热身1

F. 康康与新新魔塔

单点时限: 2.0 sec

内存限制: 512 MB

魔塔”三原版”就是50层魔塔,24层魔塔和新新魔塔,其中新新魔塔是”三原版”中最耐玩的一部,三种不同的转职,就可以带来三种不同的游戏体验,并且各种新颖的怪物属性也都被后来的魔塔作品广泛借鉴和沿用。

康康因为出题过于无聊,因此玩起了新新魔塔,这样达成了”三原版“全部通关的成就。

新新魔塔中有一种叫做”蓝宝石“的宝物,每个”蓝宝石“可以提高1点防御力。不幸的是,他们都被一些怪物守着。也就是说,击败第$i$个怪物之后就可以拿到$B_i$个”蓝宝石“。康康拿到”蓝宝石“后,会立即全部使用以提升防御力。

康康和第$i$个怪物战斗时,必定会受到$A_i$次伤害,每次伤害会使得康康损失(怪物的攻击$C_i$-康康当前的防御力)点生命值。康康的初始防御力是0。

康康意识到,以不同的顺序和这些怪物交战,损失的生命值可能会有所不同。康康想知道他最少损失多少点生命值,并且还要知道和怪物交战的具体顺序。

输入格式

第一行包括一个整数$n$,代表怪物的数量。

接下来$n$行,每行三个整数$A_i$,$B_i$,$C_i$,代表第$i$个怪物的信息,具体含义见题目描述。

输出格式

第一行一个整数,代表康康最小损失的生命值。

第二行$n$个整数,代表康康和怪物交战的编号顺序。如果有多解,输出字典序最小的。

样例

Input
3
10 1 10
5 1 5
3 1 3
Output
109
3 2 1

提示

对于10%的数据,所有的$B_i=0$

对于另外10%的数据,所有的$B_i=1$

对于30%的数据,所有的$B_i$都相等

对于50%的数据,$1 \le n \le 8,0 \le A_i,B_i,C_i \le 100$

对于80%的数据,$1 \le n \le 1000,0 \le A_i,B_i,C_i \le 10000$

对于100%的数据,$1 \le n \le 100000,0 \le A_i,B_i,C_i \le 1000000$,且康康的防御力不可能大于怪物的攻击力,即$\sum{B_i} \le C_i$