新技能——二分答案
本來在刷圖論裡的題的,結果不小心遇到了這道luogu1462
想了好久也沒做出來,只有看題解了(怪我咯,略略略);
好吧,這題要用二分;
1.二分思想
其實和數學中的是一樣的,對於一個單調函式,可以通過二分法來提高效率,從而更快的確定答案的範圍(或值);
(對於有單峰的函式,我們可以通過三分法來解決問題;)
2.二分答案
二分答案,就是對答案進行二分;像這樣:
while(l<=r)
{
int mid=l+r>>1;
if(check(mid)) r=mid-1;
else l=mid+1;
}
l到r就是答案的區間範圍,而check函式就自己寫了;
如開頭那道題,check函式就是損失血的最小值小於他的血量;
如果還不理解可以查查二分查詢,
或者想想讓你猜數字(1到1000000),然後告訴你這個數與答案的大小關係,你要猜幾次?(可以每一個都試一下,但如果二分是不是簡單多了?)
上一些 利提 :
noip2015 跳石頭
luogu1024
相關推薦
新技能——二分答案
本來在刷圖論裡的題的,結果不小心遇到了這道luogu1462 想了好久也沒做出來,只有看題解了(怪我咯,略略略); 好吧,這題要用二分; 1.二分思想 其實和數學中的是一樣的,對於一個單調函式,可以通過二分法來提高效率,從而更快的確定答案的範圍(或值);
BZOJ 4443 [Scoi2015]小凸玩矩陣(二分答案+二分圖匹配)
size 一行 第k大的數 tar span sizeof 多少 get return 【題目鏈接】 http://www.lydsy.com/JudgeOnline/problem.php?id=4443 【題目大意】 從矩陣中選出N個數,其中任意兩個
【網絡流24題】魔術球問題 二分答案+最小路徑覆蓋
cnblogs for getchar() str logs math 等於 active rip Description 假設有n根柱子,現要按下述規則在這n根柱子中依次放入編號為1,2,3,...的球。 (1)每次只能在某根柱子的最上面放球。 (2)在同一根柱子
505. 城市(二分答案)
正整數 tin dijkstra 格式 def 優化 nbsp urn 一行 505. 城市 ★★ 輸入文件:cost.in 輸出文件:cost.out 簡單對比時間限制:1 s 內存限制:128 MB 【題目描述】在某個遙遠的國家裏,有n個城市。編
P2183 巧克力(二分答案)
for using clas 小s input int out art ace P2183 巧克力 題目描述 佳佳邀請了M個同學到家裏玩。為了招待客人,她需要將巧克力分給她的好朋友們。她有N(1<=N<=5000)塊巧克力,但
Codeforces 772A Voltage Keepsake - 二分答案
temp tro charger tac mount sig correct ctime upper You have n devices that you want to use simultaneously. The i-th device uses ai u
[hdu2298] 物理推導+二分答案
right its get pro name clu href ace atan 題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=2298 #include<bits/stdc++.h> using n
洛谷P1316 丟瓶蓋 二分答案
ret pos class main return printf urn || space 洛谷P1316 丟瓶蓋 二分答案 二分距離 判斷能夠取幾個 1 #include <bits/stdc++.h> 2 #define For(i,j,k)
【最近公共祖先+二分答案】運輸計劃
algorithm style stack fine || ron string tdi bre 答案問的是最小值且取值具有單調性,所以可以二分。 首先可以確定蟲洞一定在所有耗費時間超過mid的計劃路徑的交集上,把所有計劃按花費時間來從大到小排序就可以很容易找出它們。 在c
【BZOJ4952】lydsy七月月賽 E 二分答案
%d lan name -1 str sof csharp .com pan 【BZOJ4952】lydsy七月月賽 E 題面 題解:傻題。。。二分答案即可,精度有坑。 #include <cstdio> #include <cstring&g
獨家秘笈!教你解鎖移動應用新技能
entity 精通 介紹 ima 簡化 應用服務 客戶 dir 解決 隨著越來越多的企業關註、投身到移動事業,移動開發的需求也日益增加,一時間精通移動開發的人員變得供不應求。然鵝,想要成為炙手可熱的開發者,則需要不斷進階新的技能。路漫漫其修遠兮,本篇文章將會重點介紹 Azu
二分答案 ①
總比 兩個 但是 我們 朋友 整數 所有 小數 就會 05:派 總時間限制: 1000ms 內存限制: 65536kB 描述 我的生日要到了!根據習俗,我需要將一些派分給大家。我有N個不同口味、不同大小的派。有F個朋友會來參加我的派對,每個人會拿到一塊派(必須一個派
疫情延遲 NOIP模擬 二分答案 圖論
開始 clu http 傳播 解釋 using gis hide n) 題面在最下方。 首先最短路判斷一下有沒有輸出 -1 的情況。 然後把握答案可以二分求解的特點,那就很容易解決了。 令邊中最大的年代為 maxx 那麽就在[1,maxx]中進行二分求解,枚舉年代mid,跑
跳石頭 NOIP2015 D2T1 二分答案 模擬 貪心
res 比賽 data number tex bsp Language () toolbar 描述 一年一度的“跳石頭”比賽又要開始了!這項比賽將在一條筆直的河道中進行,河道中分布著一些巨大巖石。組委會已經選擇好了兩塊巖石作為比賽起點和終點。在
[Bzoj1821][JSOI2010]Group 部落劃分 Group(並查集)(二分答案)
ble 輸出 content 有意 表示 com 自己 clu 我們 1821: [JSOI2010]Group 部落劃分 Group Time Limit: 10 Sec Memory Limit: 64 MBSubmit: 2949 Solved:
C語言新技能get
cpp truct 代碼 eof int tag 使用 out pre 平時用C語言寫代碼的是,例如要分配一個結構體大小的堆內存,通常使用如下方法申請: typedef struct tagA_S { int a; int b; }A_S; A_S *p = (A_
POJ 2749 Building roads 2-sat+二分答案
add set color head mem 多少 char size cto 把愛恨和最大距離視為限制條件,可以知道,最大距離和限制條件多少具有單調性 所以可以二分最大距離,加邊+check 1 #include<cstdio> 2 #include
HDU 3081 Marriage Match II(網絡流+並查集+二分答案)
you 集合 more cst ott next friends nic problem 題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=3081 題目: Problem Description Presumably, y
「CodePlus 2017 11 月賽」汀博爾 (二分答案)
sca https min fix type namespace 題意 滿足 fontsize 題目鏈接:https://loj.ac/problem/6249 題意:有 n 棵樹,初始時每棵樹的高度為 H?i?,第 i 棵樹每月都會長高 A?i??。現在有個木料長度總量
【二分答案】【最大流】[HNOI2007]緊急疏散EVACUATE
方向 會有 只有一個 bool ins long 輸入 上下 就是 [HNOI2007]緊急疏散EVACUATE 題目描述 發生了火警,所有人員需要緊急疏散!假設每個房間是一個N M的矩形區域。每個格子如果是‘.‘,那麽表示這是一塊空地;如果是‘X‘,那麽表示這是一面