- 博客(134)
- 收藏
- 关注
原创 M - Mountaineers (MST+树上倍增)
将原图中点每个点四连通方向的点建边,权值为两点权值中较大者的值。对这个图建立最小生成树,那么最小生成树上任意两点之间路径上的最大点权即为答案(因为是树,所以任意两点间的简单路径唯一)通过树上倍增维护维护树上区间最值求出最大值即可。
2023-05-26 20:43:09
443
原创 E - Least Elements(树状数组+二分 / set)
每次对窗口内的元素查询,二分枚举第一个树状数组前 mid个位置是否存在k个数,查询到包含有k个数的位置后,直接查询另一个树状数组的该位置之前的数字的和即可。要注意,我们不一定能找到一个位置恰好在它之前有k个数,所以要特殊处理下当前有效位置包含的数小于k,下一个有效位置包含的数大于k的情况。先离散化数据,然后将滑动窗口内的数字个数插入树状数组,数字的值的和插入另一个树状数组,给定长度为N的序列,对于从前往后每个长度为M的子串求出字串中前K小数的和。
2023-04-24 19:09:09
372
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人