后退
滚动

【CF 867E】Buy Low Sell High

拒绝线段树 如果堆中没有元素或比堆顶小,直接加入当前元素,否则删除堆顶,插入两个当前元素 一个代表在当前情况下升值,即不选在堆顶卖,选择在当前位置卖,另一个则是让他可以购买 #include<bits/stdc++.h> using namespace std; typedef long long LL; multiset<int> sk; int main() { int n; LL ans = 0; cin>>n; for(int i=0; ...

【hdu1007】Quoit Design【最近点对】

妙啊 将区域分成左右两块,分别求最短距离d 后求跨区域的距离,一个点的上方最多能有六个点和他的垂直距离水平距离>=d 否则某个半平面内一定存在两个点距离小于d 然后就只用求6个点了 (数据有点水啊,明显错误的算法都能过 绝了 #include <iostream> #include <cstdio> #include <cmath> #include <algorithm> using namespace std; const int N=1e6+10; struct ...

【poj3469】Dual Core CPU

网络流复活 最小割问题 S向第i个任务连a[i]的边,向T连b[i]的边,信息交换的从a到b连w[i]的双向边,如果a、b在两个不同的核上,该无向边一定会有流经过 #include <iostream> #include <cstdio> #include <cstdlib> #include <algorithm> #include <cstring> using namespace std; const int N=4e4+10; const int M=1...