摘要: updated 2019.11.10 之前笔误了 首先这题的条件就在于 一棵树上任意两个距离$\leq2$的点颜色不同 并且只有三种颜色 那么如果存一个点$u$ 有三个点与$u$相连 这三个点颜色就必须两两不同 然后这三个点就把三种颜色取完了 然后$u$就没办法取颜色了 这样就无解 于是 只要存在任 阅读全文
posted @ 2020-04-21 14:04 ItzInstallB 阅读(130) 评论(0) 推荐(0) 编辑
摘要: Codeforces Round #598 (Div. 3) F 首先无论反转多长的子串 最后的效果能够等同于进行若干次相邻两个字母交换 把相邻交换看作后者前移 abcd->abdc->adbc->dabc dabc->dacb->dcab dcab->dcab dcba 接下来分类讨论 如果有字母 阅读全文
posted @ 2020-04-21 14:03 ItzInstallB 阅读(133) 评论(0) 推荐(0) 编辑
摘要: Tarjan算法有很多应用 还可以求 无向图的割点和桥 点双连通分量 边双连通分量 LCA 等 1.强连通分量 定义:强连通分量是一个点的集合 从任意一个点出发都可以到达集合中的所有点 也就是任意两点之间可以相互到达 ~~画张图理解吧~~ 每一个用红线框起来的部分都是一个强连通分量 1 2 3 4可 阅读全文
posted @ 2020-04-21 14:02 ItzInstallB 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 一个就像贪心一样的 DP 思路还是挺巧妙的 首先由于可以任意分段 对于任何一个长度 \(len<k\) 的段 这一段是不能够去掉任何一个数的 也就是每一个数都要被统计到答案里 所以要是弄出来这样一个分段就把它拆成 \(len\) 个长度为 $1$ 的段是等价的 拆了处理更方便 其次对于长度 \(le 阅读全文
posted @ 2020-04-21 13:59 ItzInstallB 阅读(146) 评论(1) 推荐(1) 编辑
摘要: 看到$n,k \leq 10^9$ 差不多就是道结论题了 所以...开始推结论吧反正比赛时候弄了好久 能到达必败态的状态是必胜态,只能到达必胜态的状态是必败态 首先把题目转化 : 一堆石子有n个,每次可以取1个,2个或k个。 直到有一方无法操作,无法操作的一方输 假设状态为还剩下多少个石子 那么0就 阅读全文
posted @ 2020-04-21 13:56 ItzInstallB 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 也没做完,简单题都做掉之后,就做不下去了((( 第一行是题目链接,第二行是 AC 代码评测记录链接。 rating 代表评定难度,enjoyment 代表做题体验,这两个都是个人主观评定的。 AGC035C 题 代码 有趣的构造。 这题是很久以前做的了。 首先判无解,$2^k$ 不可行,因为其它数异 阅读全文
posted @ 2020-04-21 13:51 ItzInstallB 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 序 2019.11.18 读了一遍自己今年的省选游记 看了看曾经的自己 总是说下一次不要犯错 其实还有多少下一次呢 Day1犯下曾经犯过的错 Day2直接重蹈Day1覆辙 我觉得今年的题目完全是省选风格的(包括题面 以及一些从来没有过的压缩IO的操作) 我个人还是比较喜欢这样 题面也写的很清楚 今年 阅读全文
posted @ 2020-04-21 13:44 ItzInstallB 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 前言 二分是个看似很简单的算法 其实它的思想非常的巧妙 此外 二分中有很多细节也是值得思考的 下面也讲讲我个人对二分的理解吧 1.二分的本质 在单调序列或者单调函数中查找 我们就先拿一个简单的例子好了 寻找单调递增序列$arr$中位置最靠左且$\geq x$的数 在这里我先随便给个序列吧 显然答案是 阅读全文
posted @ 2020-04-21 13:40 ItzInstallB 阅读(208) 评论(0) 推荐(0) 编辑
摘要: updated. 2019.11.3 Dijkstra是用于求解正权图上的单源最短路径(SSSP)问题的算法 在这里我也想说一下关于SPFA和Dij Dij是一个求 没有负权边的图的单源最短路 的算法 SPFA是一个求 存在负权边的图的单源最短路 以及判负环的算法 看似一字之差 写起来也很像 但其实 阅读全文
posted @ 2020-04-21 13:38 ItzInstallB 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 我们所常说的树链剖分其实是轻重链剖分 树链剖分可以处理树上的任意两点间路径和任意一点子树的信息修改与查询(配合线段树这样的数据结构..) 建议先学会线段树和 LCA。 首先注意下文中权值是赋在点上的 而不是在边上 如果遇到权值在边上的情况 把权值赋给这条边连接的两点中深度较大的那个点即可 1.引入 阅读全文
posted @ 2020-04-21 13:36 ItzInstallB 阅读(294) 评论(0) 推荐(0) 编辑