#C05L01P14. C05.L01.插入与冒泡排序.附加题3.拯救花园(NH2013t6)

C05.L01.插入与冒泡排序.附加题3.拯救花园(NH2013t6)

题目描述

一天, 晨晨发现自己的 n ( 2 ≤ n ≤ 100 ) 只兔子跑到自己的花园里面,它们在尽情的吃着她的宝贝花卉。

晨晨看在眼里痛在心里,她现在只能把兔子逐个的抓回笼子里面。

而送每只兔子回去的时间都不同,例如送第 i 只兔子回去需要 tit_i ( 1 ≤ tit_i ≤ 100 ) 单位时间,那么晨晨送第 i 只兔子来回共需要花费 2*tit_i 单位时间, 另外每一只兔子单位时间的破坏力都不同, 例如第 i 只兔子单位时间内破坏 did_i ( 1 ≤ did_i ≤ 100 ) 朵花 。

现在的问题是, 晨晨如何安排送这 n 只兔子回笼子才能使这些兔子的破坏最小。

输入格式

第一行: 一个整数 n ( 1 ≤ n ≤ 100 ) ;

接着有 n 行, 每行两个空格分开的整数 ti,dit_i , d_i , 分别代表第i只兔子的送回去的时间 , 和单位时间破坏力。

输出格式

一行:一个整数,代表这些兔子破坏多少花卉。

样例

6
3 1
2 5
2 3
3 2
4 1
1 6
86

样例解释
晨晨送兔子回去的顺序分别为: 6, 2, 3, 4, 1, 5。

  • 其中先送第 6 只兔子回去, 剩余兔子破坏 (1+5+3+2+1)*2=24 朵花;

  • 送第 2 只兔子回去, 剩余兔子破坏 (1+3+2+1)*4=28 朵花;

  • 以此类推, 送第 3、4、1 只兔子回去剩余兔子的破坏分别为 16、12 和 6 朵花;

  • 最后送第 5 只兔子回去的时候, 没有兔子在花园里面了, 所以破坏 0 朵花

最后总共破坏 24 + 28 + 16 + 12 + 6 = 86 朵花。