UVa 1450 Airport 二分 思路

2021-08-08 23:16:21 字數 698 閱讀 1791

題目大意:某飛機場有兩個通道w和e。每一時刻都有一些飛機到達w通道或e通道(數目分別為ai和bi),每個通道的飛機按照來的順序編號為0 1 2 ...,然後,每一時刻只能有一架飛機起飛。求任意時刻停留在機場的飛機的最大編號的最小值。

思路:首先二分答案ans,判斷是否存在一種方案,使得最大編號為ans。在判斷時,如果只有一邊有飛機,那麼直接起飛一架那邊的飛機,否則將飛機保留下來後面判斷時用,即兩邊都能起飛飛機時就把飛機暫時保留下來。

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

typedef long long ll;

const int dr = ;

const int dc = ;

const int maxn = 5000 + 10;

int a[maxn], b[maxn];

int n;

bool judge(int max)

return true;

}int main()

else l = mid + 1;

}printf("%d\n", ans-1);

} return 0;

}

UVa 11168 Airport凸包與直線方程

題意 給出平面上的n個點,求一條直線,使得所有點在該直線的同一側且所有點到該直線的距離和最小,輸出該距離和。思路 要使所有點在該直線的同一側,明顯是直接利用凸包的邊更優。所以列舉凸包的沒條邊,然後求距離和。直線一般式為ax by c 0.點 x0,y0 到直線的距離為 fabs ax0 by0 c ...

uva 714 貪心 二分

include using namespace std const int maxm 500 int k,m,p maxm bool solve int ans else pre p i return kr k void print int ans else pre p i for int i 0 ...

UVA 10125 Sumsets(二分查詢)

given s,a set of integers,find the largest d such that a b c d where a,b,c,and d are distinct elements of s.several s,each consisting of a line contai...