BZOJ 4985 評分 二分答案 dp判定

2021-08-09 19:57:28 字數 1930 閱讀 5850

time limit: 10 sec  memory limit: 64 mb

submit: 46  solved: 34

[submit][status][discuss]

lj最近參加乙個選秀比賽,有n個評委參加了這次評分,n是奇數。評委編號為1到n。每位評委給lj打的分數是乙個整數,評委i(1 ≦ i ≦ n)的打分為di。這次採用了一種創新的方法計算最後得分,計算規則是:最初n位評委排成一排,檢查隊伍排頭的3位評委的評分,去掉乙個最高分和乙個最低分,剩下的乙個評委移動到隊伍最後,反覆執行以上操作,直到隊伍中的評委只剩一位,那麼這個評委的打分就是lj的最後得分。由於有的評委年紀比較大了,不記得自己的位置了,現在有m(1 ≦ m ≦ n - 2)個評委很快找到了自己的位置,剩下的n-m人找不到位置了,需要給他們重新安排位置。由於lj希望自己的得分盡可能高。請你幫忙計算出lj最後得分可能的最大值。

第一行為整數n和m,用空格分隔。表示有n位評委,其中m人的初始排列位置已經確定。

接下來m行中第i行(1 ≦ i ≦ m)為兩個整數di和pi,用空格分隔。

表示第i位評委的評分為di,初始排列位置為隊伍排頭開始的第pi位。

接下來n-m行中第i行(1 ≦ i ≦ n ? m)為整數di+m,表示評委(i+m)的評分為di+m。

3 ≦ n ≦ 99 999,

1 ≦ m ≦ n - 2,

1 ≦ di ≦ 109 (1 ≦ i ≦ n),

1 ≦ pi ≦ n (1 ≦ i ≦ m),

pi != pj (1 ≦ i < j ≦ m)。

輸出一行,為1個整數,表示lj得分的最大值。

7 35 2

5 58 662

898//最高得分的評分排列:2, 5, 6, 8, 5, 8, 9

感覺這個題不是很好想到

翻了題解。。。

二分答案 然後用dp判定

怎麼判定呢

設f(i)表示把令i位置的值》=二分答案x時,最少需要幾個額外的(固定的)>=x的數在這之前為他擋槍

之後直接模擬刪除過程,並dp轉移就好了

d_n-m~d_n是可以隨便放的所以他們是可以有的額外的數

然後求解出最後位置所需要的數,比較是否夠用就可以了

最開始1~n每個位置i

若不確定

則f(i)=1 因為需要放乙個》=x的數

若確定若d[i]>=x f(i)=0 因為已經》=x不用多餘的數來擋槍

否則f(i)=inf 無論如何也不能比》=x

之後每個位置由目前最前面的三個轉移過來

不妨設他們的dp值為x,y,z

則轉移方程為f(i)=min(x+y,x+z,y+z,inf)

#include#include#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;

inline int read()

while(ch<='9'&&ch>='0')

return x*f;

}void print(int x)

const int n=100100,inf=0x3f3f3f3f;

int n,m,a[n],b[n];

int q[n<<1];

inline bool check(int val)

while(tail>head+1)

return q[head]<=tmp;

}int main()

for(i=1;i<=n-m;++i)b[i]=read();

while(l<=r)

print(l-1);puts("");

return 0;}/*

7 35 2

5 58 662

898*/

BZOJ 2654 tree 二分答案

根據mst演算法的性質,每次選權值最小的邊,所以我們可以給白邊加上或減去乙個權值k 令白邊被少選或者多選,二分k即可。ps 機房裡大神突然討論起乙個好像很有道理但實際上並沒用什麼卵用的問題 如果當某乙個權值有很多條白邊和黑邊,如果加上乙個k的時候只選到了need 1條邊,而加上k 1的時候會選到ne...

Codeforces 1132D 二分答案 堆

傳送門 二分答案,考慮如何判定 可以用貪心的方法,每次找最快沒電的電腦,在沒電前1單位時間給它充電 正確性顯然 實現上可以維護乙個堆,儲存每個電腦電用完的時刻,每次從堆頂取出最小的乙個給它充電。設二分值為mid,對於每個電腦記錄它的充電次數num i 則沒電的時間就是 lfloor frac rfl...

BZOJ 1052 二分答案 解題報告

1052 haoi2007 覆蓋問題 description 某人在山上種了n棵小樹苗。冬天來了,溫度急速下降,小樹苗脆弱得不堪一擊,於是樹主人想用一些塑料薄 膜把這些小樹遮蓋起來,經過一番長久的思考,他決定用3個l l的正方形塑料薄膜將小樹遮起來。我們不妨將山建 立乙個平面直角座標系,設第i棵小樹...