09 2022 档案

摘要:传送门 思路 如果只要求一个点,那么就是求最短路上的必经点,有很多方法可以实现(比如某波说的建 DAG 跑 tarjan 求割点) 但现在是两个点,我们考虑将问题转化 要所有最短路都经过 AB,那么就是说,经过 A 的最短路方案数,加上经过 B 的最短路方案数,要等于所有最短路 阅读全文 »
posted @ 2022-09-26 10:07 zuytong 阅读(23) 评论(0) 推荐(0) 编辑
摘要:传送门 tourist 出的绝世好题 思路 首先,考虑一个范围更广的问题: u=1n1v=u+1nwuwvd(u,v) wu 表示 u 的点权,d(u,v) 表示 u, v 之间最短路 显然原问题就是 wu 都为 1阅读全文 »
posted @ 2022-09-23 15:20 zuytong 阅读(26) 评论(0) 推荐(0) 编辑
摘要:传送门 思路 对于第一种限制,我们连接 (x,y)=1(y,x)=1 对于第二种限制,我们连接 (x,y)=0 如果一个图只有第一种边,那么要么就是没有解(有环),要么答案就是点的个数 因此我们考虑将图缩成一个 DAG 来判断 如果一个强联通分量中出现负环,那么就无解 否则,最后的答 阅读全文 »
posted @ 2022-09-22 15:35 zuytong 阅读(29) 评论(0) 推荐(0) 编辑
摘要:传送门 思路 淼淼题 考虑一个朴素的 DP:我们设 fi 表示将 [1,Ri] 的居民治好需要的最小代价 对于转移 fifj,当且仅当 RiLj+1|TjTi| 这是 O(n2) 的;因为有取 min 操作,我们 阅读全文 »
posted @ 2022-09-21 16:03 zuytong 阅读(67) 评论(0) 推荐(1) 编辑
摘要:传送门 思路 这是一道纯纯暴力题,因为我们可以证明它的状态数不会超过 nn 级别: 若 pn 时,显然状态数不会超过 nnp>n 时,它经过的地方数 <n,因此状态数不超过 mn 由于 阅读全文 »
posted @ 2022-09-21 11:39 zuytong 阅读(70) 评论(0) 推荐(0) 编辑
摘要:传送门 题意:n1e5 个整数,范围 1e9a1e9,求第 k 小的子集和 思路 先考虑只有正数怎么做 这就是经典的类最短路: 先将序列排序,然后从最小的子集和 a1 出发 每次加入 SaMx+aMx+1S+aMx+1 阅读全文 »
posted @ 2022-09-21 09:10 zuytong 阅读(20) 评论(0) 推荐(0) 编辑
摘要:传送门 思路 ~~DP 基础还是不扎实啊~~ 问题是将树拆成 k+1 个连通块,每个连通块求出一个直径,将这些直径依次相连,最后输出总直径的长度 我们考虑 O(nk) 的树形 DP 我们设 dpi,j 表示 i 子树中,有 j 个连通块,它们的直径和的最大值 但要直接转移似 阅读全文 »
posted @ 2022-09-20 15:56 zuytong 阅读(27) 评论(0) 推荐(0) 编辑
摘要:传送门 思路 WQS 二分优化 DP 的经典例题 显然我们有 O(nab) 的 DP 做法,(不知道卡卡能不能过呢?) 我们考虑对 a 球做 WQS 二分 每次二分一个 mid,对于所有与 a 有关期望都减去 mid(包括同时使用 a,b 球的情况) 而对于 b 球,我们 阅读全文 »
posted @ 2022-09-20 09:54 zuytong 阅读(27) 评论(0) 推荐(0) 编辑
摘要:传送门 ~~有的人说晚上要爆切2道题,结果以机房太热为由摸鱼,大家快去吊打他~~ 开始以为是和 CF888G 一样的套路,于是打算直接爆切它 但问题在于,前一道题可以先去重再做,而这道题却不行,这样导致 trie树 建出来回产生一系列的问题 ~~然后只能跑去看题解了~~ 用某个 B 开头的 MST 阅读全文 »
posted @ 2022-09-17 08:26 zuytong 阅读(28) 评论(0) 推荐(0) 编辑
摘要:传送门 思路 kruskal 重构树的一个很好的应用 这道题中,我们建两棵重构树: 一棵按照边权为两点编号中的最小值,建一个小根堆重构树(称为树 a) 一棵按照边权为两点编号中的最大值,建一个大根堆重构树(称为树 b) 设 a 上叶子结点的 dfs 序为 da[u]b 上叶子结 阅读全文 »
posted @ 2022-09-14 20:08 zuytong 阅读(23) 评论(0) 推荐(0) 编辑
摘要:传送门 做了整整一天的时间了 思路 一个人在某棵树摘苹果后,下一个在这棵树摘苹果的人是固定的 我们连接一条由前一个人指向后一个人的边,这样会组成一个内向基环树森林 具体而言,就是每个人指向逆时针上第一个与他的距离 C 的人 同时,我们将每棵果树放在第一个摘它的人的结点上,人移动就相当于果 阅读全文 »
posted @ 2022-09-09 14:38 zuytong 阅读(82) 评论(0) 推荐(0) 编辑
摘要:传送门 麻了一道大水题因为我忘了图不一定联通调了 40 分钟... 思路 一棵树的情况很好解决,按照拓扑序(也就是从叶子到根)进行匹配,且每次都最后匹配与父亲的连边(若边数为奇数则不匹配) 变成无向图后,考虑先走出一棵 DFS 树,然后和树的做法一模一样 其实这样的做法就是为了时刻保持原本的联通性 阅读全文 »
posted @ 2022-09-07 15:31 zuytong 阅读(36) 评论(0) 推荐(0) 编辑
摘要:传送门 思路 dfs 树的一道出色的应用题 令 k=n 我们先按照遍历的顺序构建出 dfs 树 对于一条返祖边 (u,v),如果有 depudepv+1k,那么 dfs 树上的链 (v,u) 就是一个满足要求的环 假如并没有 阅读全文 »
posted @ 2022-09-06 15:24 zuytong 阅读(16) 评论(0) 推荐(0) 编辑
摘要:传送门1 传送门2 被 A 题爆踩,没救了... 哦原来是 CEOI 啊,还有救还有救... 思路 首先这 2m 张图中,如果它是 DAG,那么他们字典序最小的拓扑序两两不同 因为假设反转 (u,v),那么 u,v 的入度关系就会改变,他俩的拓扑序一定会反过来 考虑将问题化简:对于一个 阅读全文 »
posted @ 2022-09-06 14:16 zuytong 阅读(41) 评论(0) 推荐(1) 编辑
摘要:传送门 考场上绝对不可能想出来的... 就算能想到一点点,但这个复杂度看起来很不正确,很难1继续往下想... 思路 容易想到的是,我们一定是从一棵树的起点 s 走到某点 x,再从 x 一直走横路(也就是树与树之间的边)到目标树的 x,再从这棵树的 x 走到终点 t 假设 $w 阅读全文 »
posted @ 2022-09-05 15:26 zuytong 阅读(251) 评论(0) 推荐(0) 编辑
摘要:传送门 思路 一个朴素的想法就是 树剖 + 可持久化 trie 树 但这样是 O(qmlog2V) 的,30s 跑不过去 但我们注意到,我们每次最多访问到前 mlogV 大的数 我们就可以考虑将前 mlogV 大的数取出来,从大到小枚举数位,判断是不是有 m 个数这 阅读全文 »
posted @ 2022-09-05 14:51 zuytong 阅读(294) 评论(0) 推荐(0) 编辑
摘要:传送门 思路 考虑使用莫队 当加入一个数时,如果不是第一次加入,就不用管它; 否则,我们在权值线段树上记录它的贡献 为了方便修改,线段树上需要记录的是:它的排名减一的斐波那契数与它的乘积,以及它的排名的斐波那契数与它的乘积,记为 pre,sum 假如我们加入一个数 x,那我们需要统计 1 阅读全文 »
posted @ 2022-09-03 07:20 zuytong 阅读(35) 评论(0) 推荐(0) 编辑
摘要:传送门 这真是一道分块神题! 思路 我们先将点编号进行分块 令 b[i] 表示 i 的祖先中,最近的不与 i 同一个块的结点编号 显然,如果 pos[a[i]]<pos[i],那么 b[i]=a[i];否则 b[i]=b[a[i]]pos[i] 表示 i阅读全文 »
posted @ 2022-09-02 20:31 zuytong 阅读(17) 评论(0) 推荐(0) 编辑
摘要:传送门 思路 (%%% lby大佬爆切此题) 对于这种能延迟生效的东西,第一考虑就是打标记 先考虑操作 1:我们假设给所有点一个初始点值 1,当要指定一个点 x 进行操作 1 时,我们将 x 的点权加一,因此, x 的点值实际上代表着它向自己的子树传递的次数 再考虑查询:当询问 $ 阅读全文 »
posted @ 2022-09-02 09:07 zuytong 阅读(25) 评论(0) 推荐(0) 编辑
摘要:传送门 思路 2100000 ?别想了,普通高精度肯定不行 但我们发现,求最短路的过程中,其实是用到了比较大小和加法操作 细想比较大小的过程,当长度相同的数,我们会先略过前面相同的部分,比较第一个不同的数字,时间大部分都耗在了相同部分的枚举上 我们就可以使用二分,找出第一个不同的数字 对于 阅读全文 »
posted @ 2022-09-01 19:15 zuytong 阅读(36) 评论(0) 推荐(0) 编辑
摘要:传送门 思路 对线段树的功能理解又加深了 假设我们枚举答案为 x,那么要满足有一条链包含了 1 ~ x1 的数 我们考虑建立一棵线段树,下标为点权,区间记录的是 [l,r] 是否存在一条链使得 l ~ r 都在链上,如果有,我们只需要记录链的两个端点即可 考虑如何合并两个区 阅读全文 »
posted @ 2022-09-01 10:50 zuytong 阅读(22) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示