随笔分类 - 数据结构-单调队列/栈
摘要:"题目链接" "双倍经验" 设$H$表示长,$W$表示宽。 若$H_i include using namespace std; const int MAXN = 50010; define ll long long inline ll min(const ll a, const ll b){ re
阅读全文
摘要:"题目链接" 把线段以斜率为第一关键字,截距为第二关键字升序排序。 然后维护一个单调栈,保证栈中两两线段的交点的$x$坐标单调上升就行了。栈中的线段即为所求。 cpp include include using namespace std; const int MAXN = 50010; struc
阅读全文
摘要:"题目链接" 开始还以为是尺取。发现行不通。 一看标签二分答案,恍然大悟。 二分一个$mid$(实数),把数列里每个数减去$mid$,然后求前缀和,在用单调队列维护$sum[i t\text{~}i s]$的最小值,用$sum[i]$减去它,如果大于等于$0$就说明$mid$可行。
阅读全文


浙公网安备 33010602011771号