Loading

摘要: 超级好的题! 首先考虑一下 L=2 的情况,它可以等价于只查询一个后缀,这引导我们想一个动态加点加边求最小生成树的做法,发现这是 LCT 基础练习题,如果要加入 (u,v) 这条边,如果不连通直接加,否则删除换上最大的边就行了。 而原问题需要我们合并前后缀,发现合并复杂度爆了。发现我 阅读全文
posted @ 2025-02-26 20:25 lalaouye 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 首先发现问题是在一般图上的,非常难以处理,考虑从简单情况入手。 如果给定的是一棵树,我们只需要找到两条经过次数最多的边就好了。那是不是缩个点双就做完了呢?发现如果选的不是割边是很棘手的问题。 那么考虑简单环怎么做。假设当前第 i 条边为 (i,i+1),第 n 条边为 \(( 阅读全文
posted @ 2025-02-26 20:25 lalaouye 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 场上不到半小时就过了,感觉这题的难度取决于它是第几题。。 首先注意到加起来小的阵营会把牌打完,现在考虑小阵营对大阵营的贡献。 每个小阵营机器人必然会以顺时针的方向对后面的大阵营机器人做贡献,那么我们直接绕着环跑两圈,记录当前小阵营打出的牌数和往后做贡献就行了,至于为啥要跑两圈是因为第一圈可能没贡献干 阅读全文
posted @ 2025-02-26 20:25 lalaouye 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 首先这道题肯定可以设 fi 表示前 i 位的答案,转移就是枚举一段红加一段蓝,并 check 能否转移,这样可以简单做到 O(n2)。而对于转移怎么 check 呢?首先红色点对于无解的影响是好处理的,问题是蓝点怎么处理。我们考虑对于所有蓝点独立处理不 阅读全文
posted @ 2025-02-26 20:25 lalaouye 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 首先这种题肯定是查路径之外的 min,并且排列显然跟搜索序有关。直接想疑似是困难的,先想想简单情况,比如说 uv 的祖先。将树分成几块画出来,会发现链上挂着的一些搜索序介于 [dfnu,dfnv] 之间的点不好用 dfn 处理。而注意到它有两个序列 阅读全文
posted @ 2025-02-26 20:24 lalaouye 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 先考虑 C=1 的情况,我们发现答案等价于求父亲不在询问区间内的点数,这个东西可以轻易用扫描线加树状数组维护。 再考虑链的情况,我们将统计方式定为统计连通块深度最小的,那么点 u 能产生贡献的区间则为所有满足 depudepvCvu 阅读全文
posted @ 2025-02-26 20:24 lalaouye 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 不要畏惧几何题。 注意到如果 Api,Api+1,Api+2 三个点构成了钝角,则交换 pi+1,pi+2 就可以将这三个点组成的角变成锐角,然而有可能会影响到 pi1,那么继续往后进行类似的处理即可,并且显然后面的修改不会 阅读全文
posted @ 2025-02-26 20:23 lalaouye 阅读(2) 评论(0) 推荐(0) 编辑
more_horiz
keyboard_arrow_up dark_mode palette
选择主题
点击右上角即可分享
微信分享提示