标签:记录 查集 节点 学习 寒假 即可 problem DS 单调
2022.1.17
今日学习:单调栈,单调队列,堆
DS_problem 1 游戏1
单调栈水题,倒序枚举维护一个单调栈即可。
DS_problem 03
枚举以行为底的1最大向上拓展数量,设为 \(h(x)\) ,则 \(l\) 到 \(r\) 的矩阵面积最大值为
用单调栈维护即可。
DS_problem 04
用一个 \(l\) 数组和 \(r\) 数组枚举左右,求和使用前缀和即可。
DS_problem 06 滑动窗口
单调队列水题
用ST表水过了
DS_problem 07 游戏6
横纵做2遍单调队列即可。
DS_problem 8 荷马史诗
其实就是 \(k\) 叉哈夫曼树问题。利用贪心求解即可。
2022.1.18
今日学习:单调栈,单调队列,堆
P1901 发射站
单调栈水题,维护一个单调递减的栈,每次输入数据判定高度是否大于栈顶,大于便加上价值。最后入栈。
P1950 长方形
与problem3类似,直接枚举以行为底的全'.'子矩阵即可
P4779 【模板】单源最短路径(标准版)
dijkstra堆优即可
P1776 宝物筛选
可以直接打多重背包板子AC,也可以进行单调队列优化,将数据按 \(\%w_i\) 的余数分组,体积为 \(u,u+w_i,u+2w_i....\) 然后对于每一组考虑状态转移方程:
令 \(g(k)=F(0,u+kw_i)-kv_i\) ,则
\[F(1,u+kw_i)=\max_{j=r-k}^r(g(j))+kv_i \]上面就是一个滑动窗口,直接上单调队列即可。
P2254 NOI2005 瑰丽华尔兹
暴力dp可以直接水过?
状态转移方程:
2022.1.19
今日学习:并查集,带权并查集,种类并查集
abs讲课!
P3367 【模板】并查集
直接套并查集模板即可
P5937 [CEOI1999]Parity Game
很有思维的一题。可以用种类并查集或者带权并查集做。带权并查集就是将区间转换为一棵树,边权表示奇偶,将节点到根节点所经过的所有的节点异或即可判断奇偶
UVA11987 Almost Union-Find
操作1和操作3很好想,直接最基础的并查集操作,而操作二则会影响到自己的子节点,所以我们可以建立一个虚节点,作为每个集合的父节点,这样操作的时候不会影响到子节点,剩余就很好想了
P2024 [NOI2001] 食物链
像P5953一样,可以用2中方法做。本人用的带权并查集,吃与被吃的关系可以用%3的关系式来推出。当然种类并查集就是分成三组然后判断每组中有没有谎话。
P3420 [POI2005]SKA-Piggy Banks
将每个存钱罐向此存钱罐里的钥匙可打开的存钱罐连边,最后判断联通块的个数即可。判断操作可用并查集判断
P3465 [POI2008]CLO-Toll
题意就是构造一个的基环树,保证只有一个环,直接魔改kruskra构造一棵基环树,用并查集维护即可
P3631 [APIO2011]方格染色
写出来会写题解的
标签:记录,查集,节点,学习,寒假,即可,problem,DS,单调 来源: https://www.cnblogs.com/slcloudblog/p/15820929.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。