推銷員(NOIP2015 普及組第四題)
描述
阿明是一名推銷員,他奉命到螺絲街推銷他們公司的產品。螺絲街是一條死胡同,出口與入口是同一個,街道的一側是圍墻,另一側是住戶。螺絲街一共有 N 家住戶,第 i 家住戶到入口的距離為 S_iSi? 米。由於同一棟房子裏可以有多家住戶,所以可能有多家住戶與入口的距離相等。阿明會從入口進入,依次向螺絲街的 X 家住戶推銷產品,然後再原路走出去。 阿明每走 1 米就會積累 1 點疲勞值,向第 i 家住戶推銷產品會積累 A_iAi? 點疲勞值。阿明是工作狂,他想知道,對於不同的 X,**在不走多余的路的前提下**,他最多可以積累多少點疲勞值。
格式
輸入格式
第一行有一個正整數 N,表示螺絲街住戶的數量。
接下來的一行有 N 個正整數,其中第 i 個整數 S_iSi? 表示第 i 家住戶到入口的距離。數據保證 S_1S1?≤S_2S2?≤…≤S_nSn?<10^8108。
接下來的一行有 N 個正整數,其中第 i 個整數 A_iAi? 表示向第 i 戶住戶推銷產品會積累的疲勞值。數據保證 A_iAi?<10^3103。
輸出格式
輸出 N 行,每行一個正整數,第 i 行整數表示當 X=i 時,阿明最多積累的疲勞值。
樣例1
樣例輸入1
5
1 2 3 4 5
1 2 3 4 5
樣例輸出1
15
19
22
24
25
樣例2
樣例輸入2
5
1 2 2 4 5
5 4 3 4 1
樣例輸出2
12
17
21
24
27
限制
對於 20%的數據,1≤N≤20;
對於 40%的數據,1≤N≤100;
對於 60%的數據,1≤N≤1000;
對於 100%的數據,1≤N≤100000。
提示
【輸入輸出樣例 1 說明】
X=1: 向住戶 5 推銷,往返走路的疲勞值為 5+5,推銷的疲勞值為 5,總疲勞值為 15。
X=2: 向住戶 4、5 推銷,往返走路的疲勞值為 5+5,推銷的疲勞值為 4+5,總疲勞 值為 5+5+4+5=19。
X=3: 向住戶 3、4、5 推銷,往返走路的疲勞值為 5+5,推銷的疲勞值 3+4+5,總疲 勞值為 5+5+3+4+5=22。
X=4: 向住戶 2、3、4、5 推銷,往返走路的疲勞值為 5+5,推銷的疲勞值 2+3+4+5, 總疲勞值 5+5+2+3+4+5=24。
X=5: 向住戶 1、2、3、4、5 推銷,往返走路的疲勞值為 5+5,推銷的疲勞值 1+2+3+4+5, 總疲勞值 5+5+1+2+3+4+5=25。
【輸入輸出樣例 2 說明】
X=1:向住戶 4 推銷,往返走路的疲勞值為 4+4,推銷的疲勞值為 4,總疲勞值 4+4+4=12。 X=2:向住戶 1、4 推銷,往返走路的疲勞值為 4+4,推銷的疲勞值為 5+4,總疲勞值4+4+5+4=17。
X=3:向住戶 1、2、4 推銷,往返走路的疲勞值為 4+4,推銷的疲勞值為 5+4+4,總疲勞值 4+4+5+4+4=21。
X=4:向住戶 1、2、3、4 推銷,往返走路的疲勞值為 4+4,推銷的疲勞值為 5+4+3+4, 總疲勞值 4+4+5+4+3+4=24。或者向住戶 1、2、4、5 推銷,往返走路的疲勞值為 5+5,推銷的疲勞值為 5+4+4+1,總疲勞值 5+5+5+4+4+1=24。
X=5:向住戶 1、2、3、4、5 推銷,往返走路的疲勞值為 5+5,推銷的疲勞值為 5+4+3+4+1, 總疲勞值 5+5+5+4+3+4+1=27。
推銷員(NOIP2015 普及組第四題)