09 2023 档案

CF222E
摘要:`2022.9.8 11:39 solution` 很简单的一道矩阵加速 dp,我们发现转移式非常好推,令 fo,i 表示第 i 对核苷酸为 o 的方案数,那么不难得到: $$f_{o,i}=\sum_{p=1}^{m} f_{o,i-1}\times [(p,o) \notin
10
0
0
线性基基础
摘要:`2023-08-30 15:05:38 顶置3` `launched on 2023.8.30 11:20` 参考资料: [Hypoc_:线性基详解](https://blog.csdn.net/a_forever_dream/article/details/83654397?ydreferer=
17
0
0
复杂度计算 master 公式详解
摘要:2023-08-22 11:42:47 顶置3 前言 推了半个小时的式子,我感觉我已经彻底的理解了,所以前来写一篇复杂度 master 公式计算的结论和证明。 master 公式 可以解决的问题——给出递归的复杂度公式: \[\large\begin{cases} T(1)=1\T
76
0
0
二维树状数组基础.
摘要:`2023-08-10 11:04:41 顶置3` # 二维树状数组 二维树状数组与一维树状数组其实原来差不多,相当于对整个列开一个树状数组,然后对其中每一行开一个树状数组。所以其基本形式与一维树状数组差不多,非常好理解(可以看做是行列相互独立,只是处理行的时候处理的是其对应的列的树状数组,学了二维
9
0
0
P2633 Count on a tree 题解(外加DFS序求LCA)
摘要:`2023-07-22 09:53:59 顶置3` # P2633 Count on a tree ## 前置小知识 # 冷门小科技:DFS-RMQ 求LCA 最近跟着洛谷榜一的博客学了一个冷门科技:DFS序求LCA,这道题刚好要求LCA,所以就刚好适用一下。 [$\color{Red}{原博客地址
11
0
0
CSP-S 2022 题解(部分)
摘要:`2023-09-07 16:21:33` `2023.9.7 15:46` ## 前言 算是旧事重提了吧,过去了快一年才想着来订正,不过不得不说我去年 -S 拿了挺多分的,虽然就想出了一道正解。 # T1 这题我考场上暴力乱搞拿了 60。然后听说有什么 meet in the middle 的算法
21
0
0
P5889 题解
摘要:`2023-09-07 15:43:38 solution` 一道挺好的线段树题,确实不好想到。 因为是一棵满二叉树,一个节点 s 的左儿子编号就是 2s,右儿子就是 2s+1,父亲就是 s2,题目中也给了提示。 那我们考虑如何合并区间
44
0
0
wzOI 2023.9.4 模拟赛题解
摘要:`2023-09-07 14:35:48 部分是洛谷题解` # A [原题](https://www.luogu.com.cn/problem/CF402D) 不难想到我们要先记录一下每一位的前缀 gcd,我们发现我们选择一位的前缀 gcd 除掉以后,前缀 gcd 会变为 1
33
0
0
CF1103C 题解
摘要:`2023-09-05 14:52:07 solution` 找路径很好找,我们随便跑个 dfs 树找个深度 nk 的路径输出即可。 可是怎么找 k 个长度不是 3 的倍数的环呢?既然我们跑了 dfs 树,那么就没有横叉边,对于叶子节点非树边只有返祖边,然后一看
14
0
0
CF402D 题解
摘要:`2023-09-04 18:42:46 solution` 不难想到我们要先记录一下每一位的前缀 gcd,我们发现我们选择一位的前缀 gcd 除掉以后,前缀 gcd 会变为 1 并且会导致这位之后的 gcd 全部为 1。所以每一位只能选择一次,并且我们从后往前扫肯定
4
0
0
wzOI 2023.8.31 题解
摘要:`2023-09-01 15:59:41` # 太菜了,第一题都打成那样了没发现是 MST,第三题数据范围没有很仔细看,以为是乱搞(组合之类的)题就直接跳了。 不得不说这次比赛题目的一些思路还是挺妙的,一些想法确实我这种成分想不太到。 # A ## 给出了 m
45
0
0
SP8177 题解
摘要:`2023-09-01 11:29:13 solution` ## 题意: 每次询问 [l,r] 内有多少个数满足可以被所有非 0 数位整除。 ## 思路 看到这个数据范围和题目描述,显然是数位 dp。 因为 19 的最小公倍数是 2520,并且 2520 是其他所有
5
0
0
补码与反码(附运算优先级)
摘要:2023-08-30 16:56:00 我们都知道在计算机存储的时候,有符号的数都会用最高位作为符号位。 参考:什么是原码、反码和补码 原码 就是正常的二进制数,把最高位改成符号位(0为正数,1为负数)。 正数计算不会有问题: 5+2: 0 0 0 0 0 1 0 1 + 0 0 1 0 0 0 0
80
0
0
关于读入速度的小实验
摘要:`2023-08-29 11:13:16` 有人跟我说去同步的 `cin` 比普通快读要快,我觉得有点邪门,所以做了一个小比较,然后果不其然又发现了奇怪的事情。 用以下代码测试: 注:输入数据 n=5×107,|w|2641,由于是在学校机房老年机跑,所以测试结果可
6
0
0
wzOI 2023.8.27 全场题解
摘要:`2023-08-28 21:48:45` # 总结 四题有三题的原题我见过,可惜太菜了,当时都没有听,所以不会(被 cf 猜到我忘了)。 只过了前两题和第三题暴力(第三题暴力分好少啊,早知道打第四题了),第二题做法好像在 Codeforces 上假了但是在 cf 上过了,离谱。 还好吧,除了三个跟
34
0
0
wzOI 2023.8.24 模拟赛(附树的直径和三分法)
摘要:`2023-08-28 15:53:53` # A ## 典型错误 一知半解看样例型: - 如果该队某个数组的值比最大值大就算入答案。 上第一次厕所前我的思路:开局 30 分钟。 显然,我并不需要有一个数值最大才能赢,我只需要其中一个数值比 其中一个数值比 其中一个数值最大的那个 要大的
9
0
0
STL在遍历过程中操作地址的改变
摘要:`2023-08-26 09:57:22` `start writing 2023.8.26 9:18` 又遇到奇怪错误了,其实在打模拟赛(wzOI 2023.8.24 T1)的时候就发现有这个问题了,赛后来研究一下。 以下代码: ```cpp //check是一个返回值为 bool 类型的判断函数
6
0
0
vector操作过程中出现的地址错误
摘要:`2023-08-25 15:09:42` `start writing:2023.8.25 14:15` `事情的起因又是邪恶的 yqt ...` `为什么每次跟他都会遇到奇怪的事情` #### 注——这只是一个对在劳累却有趣的 OI 生涯中遇到的插曲的记录,不是专业人士,对内容的研究也只是浅尝辄
92
0
0
[LGR-152-Div2] 全场题解
摘要:`2023-08-22 16:15:06` # 前言 现在的比赛怎么都开始向 CF Div.2 的遍地结论题看齐了,感觉打下来 3 题都是结论题? # A 这么秒的题我一开始猜结论居然猜错了啊啊啊。 看了题目以后,毫无头绪,准备从部分分入手。 p=2?奇奇偶偶互配即可,找不出什么性质。 $p=3
5
0
0
暑集 Day28 dp专题比赛题解
摘要:`2023-08-22 10:55:44` # 前言 注:这场比赛全是 dp 题,时长 3 小时。 第一眼看到 A 题这种奇葩题面直接跳了,感觉不是自己这种成分能写的,结果我旁边两个呆呆鸟 zyx,cf 居然觉得我直接上来把 A 秒了,然后他们死磕 A 题嗑了两个多小时???离谱。 最后我只 A 了
7
0
0
CF1859 前四题题解
摘要:`2023-08-13 18:17:37` # 前言 本来想着至少 A 四道的,但是 T4 因为我《卓越》的运用 stl 的能力挂掉了。不过还好,至少 rated 没掉(困死了困死了)。 # A ## 题意: 把长度为 n 的数组 a 分成两个非空部分 b,c 使得 c 中任意数都不
12
0
0
暑假集训8.8 C班模拟赛
摘要:`2023-08-10 17:58:18` # 前言 这场打下来感觉没有很妙,感觉也是题目有一定的问题吧?比如 A 题看似不正常实则通过了的做法(`nth_element` 的滥用),B 题的数据范围不清晰,以及 C 题的卡空间导致不敢用二维线段树,不过也还好,订正之后还是有收获的。 这场基本上就是
2
0
0
CF1857 Div3全场题解
摘要:`2023-08-08 23:01:17` 2023.8.8 # 前言 Div3 太简单了,但是因为我太菜了想到了但来不及写最后一题,然后 F 题因为用 unordered_map 被卡哈希 hack T 了,最后结果出来只过了 5 题,排到了 rk1365。 # A ## 题意: 给
31
0
0
CF1857G Counting Graphs
摘要:`2023-08-08 23:00:07 solution` ## 题意: 求有多少个有 n 个节点的无向图,使其满足以下条件: - 无重边自环。 - 有且只有一个最小生成树,且为给定树。 - 最大边权不大于 S。 对 998244353 取模。 ## 思路: 其实就是让我们在给定的树加
9
0
0
CF1857E Power of Points
摘要:`2023-08-08 22:59:22 CF1857E solution` ## 思路 我们发现每个点的答案其实是它与之前的点的答案加上与后面的点的答案加上与自己的答案。而与前面和与后面的前后缀答案都是可以通过递推的方式得到的,我们令 prei 表示 i 点的前缀答案,subi
16
0
0
CF1857C Assembly via Minimums
摘要:`2023-08-08 22:58:04 solution` ## 思路: 考虑到一个最小值对答案的贡献,发现如果是序列最小值,因为配对了 n1 次,而每次配对的结果都是它,所以在 b 中会出现 n1 次。 同理,次小值(可能与最小值相同)出现 n2 次,第三小出现 n3
16
0
0
CF232B Table
摘要:`2023-08-07 16:29:49` ## 题意 有一个 n×m的矩阵,求使得每个 n×n的矩阵中都有正好 k个点的方案数,方案数对 1e9+7 取模。 1n100,nm1018,0kn2。 ##
6
0
0
UVA10368 题解
摘要:`2023-08-06 15:18:08 solution` [双倍经验](https://www.luogu.com.cn/problem/P1290) 这种有限轮游戏的博弈通常都是有两种状态,必胜态和必败态。 对于必胜态,指的是从它可以转移到必败态。 对于必败态,指的是从它不论如何只能转移到必胜
10
0
0
暑假集训Day19 比赛题解
摘要:`2023-08-05 16:22:13` ## 总结 这次打下来,由于 T2 贪心不够完全,T3 模拟 5 个时不是最优,T4 想到暴力做法但是来不及打,加之全都是捆绑测试点,导致我 T2,T3 虽然加起来有不少点对了,但是还是判全错,最后也只剩下 T1 的 100。 感觉这次前三题也不难,都
3
0
0
暑假集训 Day17 模拟赛题解
摘要:`2023-08-03 18:18:03` ### 前言 好家伙,很少完整订正一场比赛,可能是因为这个比赛相对来说确实不难吧(至少正解不难)。 # 总结与反思 这场比赛其实没有我想象的那么难,只是觉得题目可能不简单,就没有往简单的思路想,反而是被之前讲过的题疑惑,以为要用到一些很奇特的算法,结果打完
6
0
0
P9488 ZHY 的生成树
摘要:`2023-07-31 19:29:29 solution` [P9488 ZHY 的生成树](https://www.luogu.com.cn/problem/P9488) ## 前言 这道题就非常的巧,下午上午上课刚讲完筛法,下午就考到了一个很像筛法的题。当时看到这个数据范围尽往线性做法想了,后
9
0
0
CF1851 部分题解
摘要:`2023-07-30 19:35:02` ## 前言 因为我实在是太菜了,没时间也不会做最后两题,所以这里只有前 5 道签到题的题解。 之后我有时间看了后两题的题解再来更新吧~ # A 先不用看那么多七七八八的,搞清楚下面几点即可: - 高度不能相同。 - 高度差得被整除。 - 高度差不能太大
16
0
1
CF1885 前三题题解
摘要:`2023-07-30 18:55:15` 水平有限,等我有时间看懂了后面的题再写后面的吧。 写完三题太困了直接睡了(AT和CF一起打真的非常累啊啊啊)。 # A 题意:给你一个排列找使其 i[1,n],aii 的最小交换次数。 发现偶数个相同就直接两两交换答
16
0
0
数论基础(还在更新)
摘要:`2023-07-29 16:22:14` # 辗转相除法 (求gcd) 求 a,b 的最大公约数。 假设 ab ,令 gcd(a,b)=d(下文都这样表示)。 那么设 a=k1d,b=k2d,则 amodb=(k1rk2)d,当 k1rk2>0
12
0
0
CF797F Mice and Holes
摘要:`2023-07-26 16:14:50` [原题](https://www.luogu.com.cn/problem/CF797F) ## 思考 考虑如何暴力转移,观察到老鼠之间的路线如果交叉或者包含都不是最优的,所以我们可以设计状态 f[i][j] 表示把前 j 只老鼠全部放在前 i
7
0
0
P4121 [WC2005] 双面棋盘 题解
摘要:`2023-07-26 14:58:54 solution` ## 简化题意: 给你一个 n×n 的只有黑白两种颜色的棋盘,每次修改把某格的黑白互换,求每次修改后黑白各自的连通块个数。 ## 解法 将棋盘转化成 n 行,每行单独处理,处理出黑色和白色分别的连通块个数(可用并查集)
9
0
0
CF95E Lucky Country
摘要:`2023-07-26 14:35:10 solution` # 思路 第一眼看以为是个图论,结果发现缩点之后就是个多重背包裸题。 我们把原连通块变成一个重量为连通块大小的物体,然后发现只需要找在容量为幸运数的情况下,放满容量所选物体数量的最小值。 考虑背包,但是复杂度为 O(n2),观察到这
4
0
0
CF401D Roman and Numbers
摘要:`2023-07-25 20:41:07 solution` [原题链接](https://www.luogu.com.cn/problem/CF401D) # 思路 看到这个数据和范围,果断数位 dp。 因为同一个数字交换顺序是一样的,所以我们直接把它们合并即可。 设计状态,观察到每个数字的个数不
5
0
0
CF1215E Marbles 题解
摘要:`2023-07-25 16:12:57 洛谷题解` # 思路 看到这道题是统计相邻交换之后操作次数,我第一反应就是求逆序对。 考虑最淳朴的暴力做法,枚举颜色之前的大小顺序关系,然后每次做一次求逆序对,复杂度 O(nlogn|c|!) (|c| 表示颜色种类数)。 但是光是 20!
12
0
0
AT_dp_v Subtree 题解
摘要:`2023-07-24 20:16:31 AT_dp_v 题解` [AT_dp_v Subtree](https://www.luogu.com.cn/problem/AT_dp_v) # 思路 考虑树形 dp,假设根左右子树的连通块已经算出来了,我们用 f[x] 表示强制将 x 染色,$x
16
0
0
D班第一次模拟赛 C题题解
摘要:`2023-07-21 15:02:47` ### 写不动数据结构了,下午打打D班的模拟赛玩玩。 # C. [2023暑假D班第一场模拟赛]爱新撅罗 ## 题面: 小X穿越了,发现自己成为了一个小人,正准备为一位清朝王爷服务。只要好好地服务,王爷就有赏。 一开始,小X的赏赐是 a0,满足 $0
9
0
0
P2757 [国家集训队] 等差子序列 和小感悟
摘要:`2023-07-19 20:07:13` (双倍经验:CF452F Permutation) ## 前言 这篇题解的代码与大部分代码用的正反做哈希不太一样,是倒数组做哈希的,希望可以给跟我方法相似但是代码挂了的同学一点启发。 ## 自己的想法 由等差数列基本性质,我们只要找到任意三个数满足 $a[
10
0
0
CF1806E Tree Master
摘要:`2023-07-19 10:59:11` 思路来源于题解:https://www.luogu.com.cn/problem/solution/CF1806E 算法:根号分治+记忆化搜索。 因为每一个查询都是同层的,我们可以只记忆层数少的(小于n),对于层数多的层,如果大于$ \sq
3
0
0
CF446C DZY Loves Fibonacci Numbers
摘要:`2023-07-18 20:49:31` ## 思路: 一开始的思路是每次存两个值,因为任意两个斐波那契数列合并之后仍然满足斐波那契的基本性质 f[x]=f[x1]+f[x2]。 但是发现这样子每次修改直接的总和得暴力递推求,复杂度爆炸。 为了解决这个突破口,稍微借鉴了一下题解的斐波那契数
9
0
0
P4121 [WC2005] 双面棋盘
摘要:`2023-07-18 20:48:35` ## 简化题意: 给你一个n*n的只有黑白两种颜色的棋盘,每次修改把某格的黑白互换,求每次修改后黑白各自的连通块个数。 ## 解法 将棋盘转化成n行,每行单独处理,处理出黑色和白色分别的连通块个数(可用并查集)。 开一个n的线段树,每个叶子节点表示一行。
10
0
0
P6273 魔法 题解
摘要:`2023-05-20 14:34:56 P6273 题解` 原题链接 [魔法](https://www.luogu.com.cn/problem/P6273) ## 题目分析 题目的意思就是让我们求每个字母出现次数相同且不为空的子串的个数。 ## 基本思路 然后我们能想到维护一个前缀和数组,然后判
24
0
0
CF1768E wonderful jump
摘要:`2023-03-01 16:50:41` ```cpp #include using namespace std; typedef long long ll; inline ll read(){ ll x=0;char c=getchar(); for(;!isdigit(c);c=getchar
2
0
0
Ryoku 的探索题解
摘要:`2022-09-02 15:14:44 P6037 题解` ### 闲话 当我看见这道绿题的时候,一时没有任何思路(没有看懂作者让我们干什么),看过一些题解的题意分析的我还是不是很清楚(语文太差了),于是,通过对样例的分析,我终于看懂了,题意明白后代码还是好写的(自己模拟才是最靠谱的)。 ## 题
9
0
0
Number 题解
摘要:`2022-08-26 13:02:02` [原题戳这!](luogu.com.cn/problem/P8482) ## 如何求最大乘积 我们令 num1 为前几位较大的数, num2 为前几位相对较小的数。 ### 浅浅地证明 首先我们肯定得使高位尽可能大,那么在高位都尽可能大的情况下,两
8
0
0
Binary search题解
摘要:`2022-08-26 12:34:22` [原题戳这!](https://www.luogu.com.cn/problem/P8481) ## 题意分析 不难看出,这道题是一个对于二分查找中 mid, l, r 如何取值使得总查询次数最少问题。 这个 w 是影响最终结果的决定性因素
13
0
0
SP19147 INS14F - Save CodeVillage题解
摘要:# 思路 任意两个序列都有至少一个相同的元素,但相同的元素不必在相同的位置。 保证每两个之间都要有相同的元素? 我们先考虑一下 n=k×2 的情况,此时如果你左边取一半,右边取一半,这时两边的元素才可能不一样。 那么当 $n using namespace std; typedef
9
0
0
P8453 美元巨大题解
摘要:`2022-08-11 16:45:02 洛谷题解` 比赛的时候乍眼一看这么多 2 直接不想写了,结果在重现赛重现看的时候感觉没有那么难了,就勇敢去贪就好了。 ## 贪心思路 首先,我们很容易得到,无论前面有重复出现了多少次该位的数,不管它前面是被异或了还是或了,我们只需要在该位最后一次出现的时
10
0
0
点击右上角即可分享
微信分享提示
深色
回顶
收起