挤奶队列
时间限制:1秒 内存限制:256M
【题目描述】
每天早晨,约翰的 \(N\) 头奶牛都排成一列,逐一挤奶。
为了提高挤奶的速率,约翰把整个挤奶过程划分成两道工序,每头牛都得连续地完成这些挤奶工序。奶牛们一个接一个地进入挤奶的牛棚,约翰负责实行第一道工序,第二道工序则让他的好友萝卜帮助完成。并且,如果某头奶牛先于另一头奶牛开始进行第一道工序,那么她开始第二道工序的时间也一定在那一头奶牛之前。
约翰发现,如果奶牛们按某种顺序排队进行挤奶,那么可能会在排队等待上多花很多的时间.比方说,如果约翰要花很长时间才能完成某头奶牛挤奶时的第一道工序,那么萝卜可能会有一段时间没有事做.当煞,如果约翰的工作完成得太快,萝卜面前就会有很多奶牛排起长队。
请你帮助约翰计算一下,如果按照最优的排队方式,最少需要多少时间才能把所有奶牛都挤过奶.对于每头奶牛,我们都知道在她身上完成第一道工序所需的时间 \(A_i\),以及完成第二道工序的时间 \(B_i\)。 .
【输入格式】
第 1 行一个整数 \(N\)。
接下来 \(N\) 行,每行两个整数表示第 \(i\) 头牛的 \(A_i,B_i\) 值。
【输出格式】
输出按照最优方案排队后,最少需要多少时间才能完成对所有奶牛的挤奶.
【输入输出样例】
Input
3
2 2
7 4
3 5
Output
16
【输入输出样例】
把奶牛们按照 3,1,2 的顺序排队,这样挤奶总共花费 16 个单位时间.
【数据限制】
对于 \(100\%\) 的数据,\(1≤N≤25000\),\(1≤A_i,B_i≤20000\)。
【来源】
Mr.he