題目大意:某飛機場有兩個通道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...