为了拯救世界,勇者们终于来到了恶龙面前。
现在有 n 位勇者排成一列准备迎战恶龙,勇者们位置事先已经排好不能改变,第 i 位勇 者的初始能力值为 ai,且每提升 1 点能力值,需要花费 bi 的代价。
但是如果任意相邻的两位勇者能力值相同,他们之间就会产生冲突从而导致战力大幅下 降。
你可以通过提升勇者的能力值,来确保队伍中任意相邻的两名勇者能力值都不相同,从 而以完美的状态迎接恶龙。
你只需要计算并输出满足条件所花费的最小的总代价。
为了拯救世界,勇者们终于来到了恶龙面前。
现在有 n 位勇者排成一列准备迎战恶龙,勇者们位置事先已经排好不能改变,第 i 位勇 者的初始能力值为 ai,且每提升 1 点能力值,需要花费 bi 的代价。
但是如果任意相邻的两位勇者能力值相同,他们之间就会产生冲突从而导致战力大幅下 降。
你可以通过提升勇者的能力值,来确保队伍中任意相邻的两名勇者能力值都不相同,从 而以完美的状态迎接恶龙。
你只需要计算并输出满足条件所花费的最小的总代价。
第一行一个整数 n ,表示勇士的数量。
接下来 n 行,每行两个数 ai , bi 分别表示第 i 位勇士的初始能力值和每提升 1 点能力 值需要花费的代价。
【样例 1 输入】
3
1 5
1 2
2 3
【样例 2 输入】
3
1 10
1 100
1 20
【样例 1 输出】
4
【样例 2 输出】
30
【样例 1 解释】
如果把第一个勇者能力值增加 1,三位勇者的能力值变成 (2,1,2),花费代价 5。
如果把第二个勇者能力值增加 2,三位勇者的能力值变为 (1,3,2),花费代价 4。
如果把第二个勇者能力值增加 1,第三个勇者的能力值增加 1,三位勇者的能力值变为 (1,2,3),花费代价 5。
因此最小花费的代价为 4,可以证明没有更小的代价能满足条件。
【样例 2 解释】
可以分别提升第一位和第三位勇士的能力值 1 点,最小总花费为 30。