hdu5199Gunner(二分查詢)

2021-07-04 07:06:18 字數 562 閱讀 9620

解題思路:

本題h的取值範圍太大,所以無法直接開陣列統計

1、 map統計

2、排序+二分

3、hash

4、優先佇列

#include#include #include #include #define maxn 1000010

using namespace std;

struct nodeq[maxn];

int ans[maxn];

priority_queue,greater> pq;

bool cmp(node a,node b){

if(a.h==b.h) return a.id

收穫:map  陣列 hash 

共同點:一一對應的關係

不同點1、map的key適用的資料型別比較廣泛,而陣列的key只能是int型別

2、map插入、查詢相對陣列來時間消耗大,map o(logn)  陣列o(1)

3、陣列相對於map來說消耗的空間大

hash相對於陣列來說降低了空間消耗,但同時時間消耗又沒有太大的影響

二分的思想。。。

hdu1669 二分多重匹配 二分

n個人分成m組,求人數最多的那一組人數的最小值。每個人肯定只能匹配乙個組,但乙個組可以匹配多個人,因此屬於多重匹配。我們設定乙個limit,表示每組最多能容納的人數。在dfs u 尋找u的匹配時,如果某一組vv的人數小於limit,那麼可以把u和vv匹配,vv已經匹配的人數 1。否則,當人數已經達到...

hdu2413 二分 二分匹配

題意 地球和外星球大戰,地球有n個飛船,外星球有m個飛船,每個飛船有自己的其實戰艦和戰艦增長率,星球於星球之間有距離,問你最少多少年地球可以打敗外星球,每個星球最多只能和乙個星球對戰.思路 題意的最後一句話告訴我們這個題目滿足二分圖,我們可以二分列舉多少年打敗,每次都重新建圖,對於h i 和 a j...

hdu 4033 二分判斷

終於有題我過了t t。剛開始jc看錯題了,以為是到各邊的距離,然後覺得蠻水的,直接以0 0 為內點,旋轉後求垂線圍成的多邊形是否是正多邊形即可。後來一看是到各頂點的距離。想了一會兒。後來用餘弦定理,二分邊長 邊長和反余弦是單調的 判斷所有構成三角形的頂角 和是否為2 pi即可。構不成三角形的話直接判...