time limit: 20 sec memory limit: 512 mb
submit: 450 solved: 316
[submit][status][discuss]
kiana最近喜歡到一家非常美味的壽司餐廳用餐。每天晚上,這家餐廳都會按順序提供n種壽司,第i種壽司有乙個
代號ai和美味度di,i,不同種類的壽司有可能使用相同的代號。每種壽司的份數都是無限的,kiana也可以無限次
取壽司來吃,但每種壽司每次只能取乙份,且每次取走的壽司必須是按餐廳提供壽司的順序連續的一段,即kiana
可以一次取走第1,2種壽司各乙份,也可以一次取走第2,3種壽司各乙份,但不可以一次取走第1,3種壽司。由於餐
廳提供的壽司種類繁多,而不同種類的壽司之間相互會有影響:三文魚壽司和魷魚壽司一起吃或許會很棒,但和水
果壽司一起吃就可能會肚子痛。因此,kiana定義了乙個綜合美味度di,j(i了餐廳提供的從第i份到第j份的所有壽司,吃掉這次取的所有壽司後將獲得的額外美味度。由於取壽司需要花費一
些時間,所以我們認為分兩次取來的壽司之間相互不會影響。注意在吃一次取的壽司時,不止乙個綜合美味度會被
累加,比如若kiana一次取走了第1,2,3種壽司各乙份,除了d1,3以外,d1,2,d2,3也會被累加進總美味度中。神奇
的是,kiana的美食評判標準是有記憶性的,無論是單種壽司的美味度,還是多種壽司組合起來的綜合美味度,在
計入kiana的總美味度時都只會被累加一次。比如,若kiana某一次取走了第1,2種壽司各乙份,另一次取走了第2,3
種壽司各乙份,那麼這兩次取壽司的總美味度為d1,1+d2,2+d3,3+d1,2+d2,3,其中d2,2只會計算一次。奇怪的是,
這家壽司餐廳的收費標準很不同尋常。具體來說,如果kiana一共吃過了c(c>0)種代號為x的壽司,則她需要為這些
壽司付出mx^2+cx元錢,其中m是餐廳給出的乙個常數。現在kiana想知道,在這家餐廳吃壽司,自己能獲得的總美
味度(包括所有吃掉的單種壽司的美味度和所有被累加的綜合美味度)減去花費的總錢數的最大值是多少。由於她
不會算,所以希望由你告訴她
第一行包含兩個正整數n,m,分別表示這家餐廳提供的壽司總數和計算壽司**中使用的常數。
第二行包含n個正整數,其中第k個數ak表示第k份壽司的代號。
接下來n行,第i行包含n-i+1個整數,其中第j個數di,i+j-1表示吃掉壽司能
獲得的相應的美味度,具體含義見問題描述。
n<=100,ai<=1000
輸出共一行包含乙個正整數,表示kiana能獲得的總美味度減去花費的總錢數的最大值。
3 12 3 2
5 -10 15
-10 15
1512
【樣例1說明】
在這組樣例中,餐廳一共提供了3份壽司,它們的代號依次為a1=2,a2=3,a3=2,計算**時的常數m=1。在保證每
次取壽司都能獲得新的美味度的前提下,kiana一共有14種不同的吃壽司方案:
1.kiana乙個壽司也不吃,這樣她獲得的總美味度和花費的總錢數都是0,兩者相減也是0;
2.kiana只取1次壽司,且只取第1個壽司,即她取壽司的情況為,這樣獲得的總美味度為5,花費的總錢數
為1-2^2+1*2=6,兩者相減為-1;
3.kiana只取1次壽司,且只取第2個壽司,即她取壽司的情況為,這樣獲得的總美味度為-10,花費的總錢
數為1-3^2+1*3=12,兩者相減為-22;
4.kiana只取1次壽司,且只取第3個壽司,即她取壽司的情況為,這樣獲得的總美味度為15,花費的總錢數
為1*2^2+1*2=6,兩者相減為9;
5.kiana只取1次壽司,且取第1,2個壽司,即她取壽司的情況為,這樣獲得的總美味度為5+(-10)+(-10)=-1
5,花費的總錢數為(1-2^2+1*2)+(1-3^2+1*3)=18,兩者相減為-33;
6.kiana只取1次壽司,且取第2,3個壽司,即她取壽司的情況為,這樣獲得的總美味度為(-10)+15+15=20,
花費的總錢數為(1-2^2+1*2)+(1*3^2+1*3)=18,兩者相減為2;
7.kiana只取1次壽司,且取第1,2,3個壽司,即她取壽司的情況為,這樣獲得的總美味度為5+(-10)+15+(-1
0)+15+15=30,花費的總錢數為(1*2^2+2*2)+(1*3^2+1*3)=20,兩者相減為10。
8.kiana取2次壽司,第一次取第1個壽司,第二次取第2個壽司,即她取壽司的情況為,這樣獲得的
總美味度為5+(-10)=-5,花費的總錢數為(1*2^2+1*2)+(1*3^2+1*3)=18,兩者相減為-23;
9.kiana取2次壽司,第一次取第1個壽司,第二次取第3個壽司,即她取壽司的情況為,這樣獲得的
總美味度為5+15=20,花費的總錢數為1*2^2+2*2=8,兩者相減為12;
10.kiana取2次壽司,第一次取第2個壽司,第二次取第3個壽司,即她取壽司的情況為,這樣獲得的
總美味度為(-10)+15=5,花費的總錢數為(1*2^2+1*2)+(1*3^2+1*3)=18,兩者相減為-13;
11.kiana取2次壽司,第一次取第1,2個壽司,第二次取第3個壽司,即她取壽司的情況為,這樣獲得
的總美味度為5+(-10)+(-10)+15=0,花費的總錢數為(1*2^2+2*2)+(1*3^2+1*3)=20,兩者相減為-20;
12.kiana取2次壽司,第一次取第1個壽司,第二次取第2,3個壽司,即她取壽司的情況為,這樣獲得
的總美味度為5+(-10)+15+15=25,花費的總錢數為(1-22+2-2)+(1-32+1-3)=20,兩者相減為5;
13.kiana取2次壽司,第一次取第1,2個壽司,第二次取第2,3個壽司,即她取壽司的情況為,這樣獲
得的總美味度為5+(-10)+15+(-10)+15=15,花費的總錢數為(1*2^2+2*2)+(1*3^2+1*3)=20,兩者相減為-5;
14.kiana取3次壽司,第一次取第1個壽司,第二次取第2個壽司,第三次取第3個壽司,即她取壽司的情況為,這樣獲得的總美味度為5+(-10)+15=10,花費的總錢數為(1*2^2+2*2)+(1*3^2+1*3)=20,兩者相減
為-10。
所以kiana會選擇方案9,這時她獲得的總美味度減去花費的總錢數的值最大為12。
黑吉遼滬冀晉六省聯考
每個區間可以選或者不選,區間之間還有限制,一下子想到集合劃分。
可以考慮下圖
六省聯考 2017 壽司餐廳
戳我 簡要題目 乙個序列,可以若干次取其中一段區間,區間及其子集的價值都會被統計進去且每個區間的價值只能被統計一次。如果你拿 c 種 x 數,你需要花費 m x 2 c x 的代價。求最大價值。這道題看起來並沒有思路,看了看題解後發現這是最大權閉合子圖。what?這是神馬?不會,於是去學了一下。然後...
六省聯考2017 壽司餐廳
感覺有難度的一道網路流 自己的網路流水平還是遠遠不夠 一開始以為是費用流搞了半天,發現無法處理只有第一次有效的情況 於是看題解才知道就是個最大權閉合子圖 由於每種東西都只有第一次有效 那麼我們可以考慮把區間作為點建圖 考慮最大權閉合子圖的模型 選擇區間 i,j 的貢獻就一定要選擇區間 i 1,j i...
六省聯考 壽司餐廳
太長了,不描述!看題面看了10min才反應過來這是個最大權值閉合子圖的問題 應用網路流最小割的模型來解決本問題 首先,每個壽司編號即為器材,代價為 w i w i m 那麼我們由每個壽司編號向匯點鏈結一條容量為w i w i m 每個壽司一定需要乙個壽司編號,代價為 w i 那麼我們由壽司向壽司編號...