#2056. Haybale Stacking

Haybale Stacking

题目描述

农夫约翰刚刚订购了大量的干草。他想将它们组织成 N\red{N }堆(1<=N<=100,000\red{1 <= N <= 100,000)},排列成一个圆圈,其中第 i\red{i }堆包含 Bi\red{B_i }捆干草。不幸的是,当农夫约翰提供这些信息时,运 送干草的卡车司机并没有仔细听,只记得把干草排成N\red{N}堆排成一圈。交付后,FarmerJohn\red{Farmer John }注意到堆 i\red{i }包含 Ai\red{A_i }捆干草。当然,Ai\red{A_i }Bi\red{B_i }的总和相同。

FarmerJohn\red{Farmer John }想将干草捆从当前配置(由 Ai\red{A_i }描述)移动到他想要的目标配置(由 Bi\red{B_i }描述)。他需要 x\red{x }个单位的工作才能将一个干草捆从一堆堆移到绕圆 x\red{x }步远的 一堆。请帮助他计算他需要花费的最少工作量。

给出n\red{n}块土地,现有泥土A[i]\red{A[i],}需要改造成B[i]\red{B[i],}但这次土地排列成环,且不可买进买出,只能运,且A[i]=\red{∑A[i]=}B[i]\red{∑B[i],}问最小花费。

输入格式

1\red{1 }行:单个整数 N\red{N}

2..1+N\red{2..1+N }行:第 i+1\red{i+1 }行包含两个整数 Ai\red{A_i }Bi(1<=Ai,Bi<=1000)\red{B_i (1 <= A_i, B_i <= 1000)}

输出格式

样例

输入样例

4 
7 1 
3 4 
9 2 
1 13

输出样例

13

提示

一圈有4\red{4}堆。最初,这些堆包含 7\red{7}3\red{3}9\red{9 }1\red{1 }包干草。农夫约翰想移动它们,使这些堆包含 1\red{1}4\red{4}2\red{2 }13\red{13 }包干草。

至少需要 13\red{13 }个单位的工作(将 6\red{6 }包从第 1\red{1 }堆移到第 4\red{4 }堆,将 1\red{1 }包从第 3\red{3 }堆移到第 2\red{2 }堆,将 6\red{6 }包从第 3\red{3 }堆移到第 4\red{4 }堆)。