- 博客(172)
- 收藏
- 关注
原创 cf-1725 M. Moving Both Hands(反图+dij)
cf-1725 M. Moving Both Hands(反图+dij)
2022-09-07 14:46:33
507
原创 2022“杭电杯”中国大学生算法设计超级联赛(4)A、G、K
由于要求打完所有怪兽,因此即使跳到后几位也需要通过连续下楼操作将之前跳过的依次取完,考虑采用后缀和,并通过二分答案找到。将会对异或和产生负贡献的数字操作成。分类讨论,具体分类见代码。后即可转化为线性基板子题。...
2022-07-28 18:07:36
188
1
原创 “蔚来杯“2022牛客暑期多校训练营3 A-Ancestor(nlogn预处理LCA 暴力)
个在树上的点,问存在多少种方案,使得删除这。由于只能删除一个点,因此方案数仅存在于。,暴力枚举删除每个点后,剩余。个点其中的一个后,剩余的。
2022-07-25 18:58:04
287
原创 cf1702G. Passable Paths(欧拉序+LCA+ST表)
传送门题意询问给出的点是否在树的一条路径上。选取两点 pos1pos1pos1 、 pos2pos2pos2 假设存在该路径,之后遍历所有点判断是否都存在于该路径上,这样的路径共有两种情况:1.该路径是一条链2.该路径挂在了某一结点上其中 pos1pos1pos1 为当前询问中深度最深的点,若所有点与 pos1pos1pos1 的 LCALCALCA 为该点本身,为情况 111,此时 pos2pos2pos2 为根节点;否则 pos2pos2pos2 为不在该链上且深度最深的点。通过计算所有点与 pos1p
2022-07-13 20:15:20
390
原创 cf1608C. Game Master(搜索+神仙思维)
codeforces1608C. Game Master又名:如何通过神仙思维将 tarjan直接转成简单搜索
2022-07-07 14:35:59
344
1
原创 cf1693C. Keshi in Search of AmShZ(div1)【最短路,反向建图】
传送门题意在一个有向图上需要从点 111 到点 nnn,每次可以选择以下一种操作:1、删除一条边2、随机移动到当前点能够通向的另一点求所需操作次数到达终点的最大值的最小值看到求最大值的最小值,第一想法:二分!于是卒但借助该特性,可以将操作 222 中的随机理解成:一定选择最到终点的最长路径,而如果希望不走最长路径,则需要删去该路上的边。由于正向建图处理环问题更麻烦,因此采用反向建图跑最短路,而从这个点到达终点所需要删除的较长路径上的边即为额外代价。在反向图中,该额外代价的表现为该点的入度(在原图中表现为,
2022-06-30 09:23:48
427
1
原创 洛谷P2515 [HAOI2010]软件安装(tarjan缩点+树上背包)
传送门看题面非常容易想到:有依赖的树上背包问题。在给有向图且存在环的情况下(即多个软件互相依赖,只能同时选择装或不装),用 tarjantarjantarjan 缩成有向树处理。由于对于任意一个结点,若不选则其所有后代都不能选,得到状态转移方程dp[x][j+k]=max(dp[x][j+k],dp[x][j]+dp[to][k])dp[x][j+k]=max(dp[x][j+k],dp[x][j]+dp[to][k])dp[x][j+k]=max(dp[x][j+k],dp[x][j]+dp[to][k]
2022-06-29 17:08:22
263
原创 cf1693B. Fake Plastic Trees(div1)【树形dp】
传送门题意一棵树上每个结点的初始值均为 000 ,需要进过若干次操作后使每个结点都落在规定的范围内。每次操作可以选择一个结点及一个非下降正整数序列,并让根节点 111 到该结点之间的 所有结点 依次加上对应的数字。问需要的最少操作次数。正向思维可以考虑对于任一结点,其最小值是否超过了所有儿子的最大值,否则就可以选择一子结点延续操作。鉴于正向建树和遍历实在是太麻烦了, 还可以由反向将所有结点的最大值向父亲推,若父亲得到的值仍然小于父亲结点要求的最小值,则说明还需要在父亲及之前增加操作次数。由于本题建树数据的特
2022-06-27 21:07:28
441
2
原创 cf1695D1. Tree Queries (Easy Version)(div2)【树上问题】
传送门题意给定一棵树,并在树上任选一个节点 xxx (未知),每次都可以询问树上另一指定结点 vvv 到 xxx 的最短路径,问最少需要几次询问,使得不论 xxx 是哪一个结点,都可以在询问次数及之内确认该点。脑模可以发现,如果树的形状是一条链,可以仅通过询问一次叶子结点确认。不属于该结构的第一个例子是拥有 444 个结点的菊花图,假设以结点 222 为菊花中心,则确认其他三个结点中的任意一个都需要经历:1.1.1.确定该点不是菊花中心 2.2.2.确定该点 两次询问。此时若以 222 为根,则结点 1,3
2022-06-27 15:41:46
405
2
原创 cf1695C. Zero Path(div2)【贪心,伪dp】
传送门题意在 nnn * mmm 的网格中,每个格子上的数字仅为 111 或 −1-1−1,每次只能向下或向右走,问从左上到右下是否存在一条路径使得路径上所有数字之和正好等于 000 ?第一反应是和 2021ICPC江西省赛A 一样的做法,三维滚动数组记录当前在第 iii 行第 jjj 列且拥有 kkk 个 111 的状态是否存在,最后判断处于右下角时 kkk 是否等于 (n+m−1)/2(n+m-1)/2(n+m−1)/2 。容易看出当 n+mn+mn+m 为偶数时可以特判无解。然而本题的侧重点是最后和为
2022-06-26 23:49:28
233
原创 cf1700D. River Locks(div2)【思维,贪心】
传送门题意给定 nnn 个水槽的容量,每个水槽装满水后,多余的水将向下一个水槽转移(转移不耗费时间),每个水槽仅对接一个注水管,开启后每秒可以注入 111 单位的水。问是否能在 ttt 秒内将所有水槽都装满,以及能够装满的情况下需要打开注水管的最少数目。容易想到在确定能够装满的情况下,最少数目即 水槽总容量时间\frac{水槽总容量}{时间}时间水槽总容量 上取整。由于水的转移具有前效性,考虑用前缀和的思想预处理前 iii 个水槽被装满所需要的时间,由于每个水槽仅对接一个注水管,维护 maxx=max(m
2022-06-26 18:37:42
149
原创 cf1700C. Helping the Nature(div2)【差分,贪心】
传送门题意对一个数组每次可以进行以下三种操作之一:1.选择区间 [1,i][1,i][1,i] 之间的所有数 −1-1−12.选择区间 [i,n][i,n][i,n] 之间的所有数 −1-1−13.对整个数组中的所有数 +1+1+1求使整个数组变为 000 的最少操作次数经典差分操作:连续区间加减同样的数,因此直接构造差分数组...
2022-06-24 17:43:09
163
原创 cf1690F. Shifting String(div3)
传送门题意给定一个长度为 n 的字符串和数组 p,字符串的每次变换都将以数组 p 中的数字作为基准,问在经过最少几次(不可以为 000 )变换后,该字符串能够变换为与初始字符串相同。对样例 3 手模后,可以得到如上表格(眼瞎了,可能有错,凑合看看规律 ),发现其中是以若干个环进行滚动的,如下标(1,8,3),(2,6),(4,7,9,10),(5)(1,8,3),(2,6),(4,7,9,10),(5)(1,8,3),(2,6),(4,7,9,10),(5) ,在最坏情况下求出每个环的长度的最小公倍数即为操
2022-06-12 21:46:15
369
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人