文章归档

全部文章

VP20260821 - 2026 icpc Hong Kong

H 脑筋急转弯题. 首先注意到 $t_{n-1}$ 和 $t_n$ 的前 $n-2$ 个字符完全相同,所以 $$\operatorname{lcp}(t_{n-1},t_n)\ge n-2.$$另一方面,每个 $t_i$ 的长度都是 …

VP20260816 - 2026 icpc ECF

B 比较板的在自动机上DP. 我们首先考虑如何判断一个给定了的串是不是合法的. 我们钦定从前向后扫描, 由于每个 c 和 p 在每个子序列中只出现一次, 所以它们就贪心去附加在已有的子序列后面就可以了, 但是相对而言困难的是决定 u 是 …

VP20260812 - 2026 icpc Shenyang

吃瘪了, 打完感觉彻底燃尽了. I 签到题,按照题意模拟即可.不过有个铸币把 continue 的位置写错了,导致输入还没读完程序就开始运行,平白吃了一大堆罚时. M 同样是模拟题.枚举完种子后,只需要利用全概率公式计算第 $i$ 个种 …

VP20260808 - 2026 icpc Wuhan

沟槽的黑冰茶出题组,这么喜欢构造是吧,吃nm的构史去吧. E 看上去和构造没什么关系,但实际上充分性需要手动搓出一个调整方案. 一开始很容易观察到,每次操作都会令总和增加或减少 $2$,所以总和的奇偶性不变. 不过手玩一下会发现一个更强 …

NOIP2025T3树的价值

是在参加南京大学办的计算理论之美活动期间和舍友随机跳题跳到的, 结果这一段时间一直在想到现在才想清楚. 简述题意 题意 给定一个有 $n(\le 8000)$ 个节点, 树高不超过 $m(\le 800)$ 的有根树 $T$ , 树根是 …

VP20260804 - 2026 icpc Shanghai

D 普通的 DP 题,不过需要稍微考虑一下实现,不然复杂度很容易写假. 将 0,1,? 分别编码成三进制位 $0,1,2$,并令 $f_s$ 表示三进制状态 $s$ 对应的广义子集和. 对于不含问号的状态,其每一位已经唯一确定了一个二进 …

XJTU2026小学期Day4

动态规划入门 教学计划 ??动态规划是什么?? 了解动态规划的几个简单的例子 动态规划是什么 认识常见的动态规划模型 $$\def\la#1{\langle{#1}\rangle}$$ 前言 ​ 出于一些众所周知的原因今年仍然由本人来讲 …

一致性定理

$$\def\lra{\leftrightarrow} \def\tx#1{\text{#1}} \def\line#1#2{\ & #1 \quad & \rm{(#2)}\\} \def\linet#1#2{\ …

数理逻辑学习笔记

前言 之前学校教离散数学的时候把数理逻辑这一章节给略过了, 于是我自己翻了一下, 发现这是一个颇有意思的领域, 但是完全可以想象计算机系的离散数学里教的数理逻辑是多么的无聊, 如果希望认真了解数理逻辑这门学问的话可以避雷西交的离散数学了 …

克林尼递归定理

$$\def\s{\mathrm{s}} \def\lra{\leftrightarrow} \def\inp{\leftarrow} \def\fa{\forall} \def\ex{\exists} …

2026暑期xcpc复健

这篇博客拿来记录一下这次复健遇到的有意思的题 Codeforces Round 1106 (Div. 2) D 我们把 n 素因子分解, 假定有 k 个素因子, 那么就可以把数 n 及其因子看成 k 维的向量, 之后题目的塔状限制使得 …

置换群与Burnside引理

upd on 2024/10/25:本质上就是陪集分解 问题的引入 一个 $2\times2$ 的棋盘,给每一个格子黑白染色,如果两种染色方案能通过旋转完全重叠的话,那么这两种方案算一种,那么求总共有几种染色的方法? sol#1 暴力枚 …

一种在多路径前提下计数不同结果数量的方法

记录一类统计结果的计数题的方法 很多题目就是初始给你一个对象,然后就是你可以对这个对象进行若干次操作,然后问你能有多少结果 这一类题目就是会遇到非常棘手的情况,就是可能有多个生成路径能生成同一个结果,然后统计路径就是会记重的,基本的做法 …

一种树状数组上二分的方法

前言 近日鄙人通过剽窃一位神的提交记录碰巧学会了树状数组的新的应用,再加上在OIwiki上的查阅后颇有理解,故写此文以记之。 原理 首先树状数组的结构是很巧妙的,下标为 $i$ 的节点统计的是下标为 $i-lowbit(i)+1$ ~ …

一种神奇的DP-树上覆盖DP

遇到做过的题不会做,以后要好好改题 :( $\color{blue}\textbf{[例题]}$ ZRtes AB day1 t3 2022syzx夏季训练4 poj#2152 fire 模型 #basic: 在树上选择若干个点,每个点 …

一种巧妙的优化DP的方法-pht转化

P6944 [ICPC2018 WF]Gem Island 之前一直都没有弄懂pht转化有什么用,现在懂了,故作文以记之。 直接从CYJ的题解开始讲起,这种阶梯DP是人都想得出来,只不过是 $O(n^4)$ 或者 $O(n^3ln …

一种巧妙的DP优化方法-限制提前

$\color{green}\textbf{[记录一种巧妙的dp优化方法]}$ 这是一种巧妙的优化状态的方法,通过把状态提前(或者说是把状态转化为限制)的方法来避免记录一些别的信息,这种优化方法相比起数据结构优化更加强大,故作文记之 …

一种平面图上的构造方法-GZOI2022T3

今天GZOI挂了,T3不会做,就是考试的时候方向错了,一直在发掘性质,发掘了两个半钟,寄。 赛后与罗老师亲切交流后发现自己真的很蠢,方向完全想错了,就是这种题目假如你知道了某一整行和某一整列之后,你就可以把整个矩阵构造出来,这个是显然的 …

一些数据结构懒标记时间戳差异的问题

对于数据结构打 lazytag 后节点时空不统一问题的解决 可以看看之前写的一篇文章 线段树初步理解 ,里头初步介绍了懒标记的作用与使用懒标记所带来的时空不统一的问题。实际上是可以将懒标记拓展到其他数据结构上的。 就以经典的 毛毛虫链剖 …

一些期望与概率DP

本人概率期望菜的一批,写一下博客来加深印象 期望的基本定义 首先期望本身是一个加权平均值,表示把每种情况按照概率发生后总和除以总的发生次数,这是定义法,然后合并一下就是: $$E= \sum_i p_i \times val_i$$ 其 …

一些解题的科技与套路

有些时候通过线段树分治可以把撤销/删除操作去掉,具体的就是统计每一个 “增加-删除“对 对于询问序列的影响的区间,然后扔到序列线段树上 如果你要算所有点的贡献,但是点之间具有对称性(比如两个点只是编号不同),那么你可以算一个点的贡献, …

一些计数方法的总结

记录系统性解决计数问题的方法 就是总结了一下《组合数学》上的内容 概念: ①生成:按照某种给定的方法来构造一个规模为 n 的对象,使其满足一系列关系。 ②限制:对于一个规模为 n 的对象,对象内的元素之间满足的一系列关系,感性理解一下, …

一些关于斜率优化DP的个人见解

关于斜率优化 今天我去复习斜率优化,然后看了半天书没看懂,然后去网上看了一篇博客,觉得 写得挺好的,然后还有了一点自己的理解,顾记此博客。 斜率优化是用于优化线性dp的,所以一般的线性dp都会涉及到最大最小值问题,然后就可以定义状态然后 …

一些反悔贪心与模拟费用流

前言 模拟费用流的主要思想是把问题建成费用流问题后不去直接用费用流算法去跑,而是考虑用某些其他更高效的方法来计算费用流,不过后者的难点在于计算的算法要因图而异,不过对像我这样比较笨的人来讲设计费用流比设计反悔贪心容易多了,其中一部分原因 …

一些对线段树的初等的理解

今天ZRtes爆零咯,就不在tes里写了 引言:以前一直只会用线段树2,线段树也是一直当做工具使用,一切线段树的科技除了线段树分治基本都不会,因此特作此文记之 线段树的 lazytag 与 pushdown 为了保证时间复杂度,线段树在 …

一些博弈论

因为博弈一直很菜所以撰写此文以记之 基础模型 Wilson博弈 Nim博弈 SG函数 破题关键 如果是两个人在对抗可以考虑引入纳什平衡的思想 即在一方一组支配策略下,对手再蠢也不会低于一个值,对手再聪明也不会高于一个值 而且随着一步一步 …

一些DP的思路与套路

多发现题目的性质,从性质上下手 dp转移可以通过更改顺序来消除一些限制 把dp转移需要的条件写进dp状态里 dp的用途是广泛的,包括计数、最优化、可行性等等,其根本就是利用记忆化避免重复计算 看到奇怪的限制应该考虑将其形式化,常规化 看 …

一个序列划分的结论

题面 划分序列(divide) 给定一个长度为 的序列 ,现在要求把这个序列分成恰好若干段(每一段是一个连续子序列,且每个元素恰好属于一段),并且每段至少有一个元素,使得和最大的那一段的和最小。 请你求出这个最小值。 输入格式 第一行两 …

数理逻辑习题I(VI)

$$\def\lra{\leftrightarrow} \def\tx#1{\text{#1}} \def\line#1#2{\ & #1 \quad & \rm{(#2)}\\} \def\linet#1#2{\ …

数理逻辑习题I(IX)

$$\def\lra{\leftrightarrow} \def\fa{\forall} \def\ex{\exists} \def\r{\mathfrak{R}} \def\bl{\begin{aligned}} …

莱斯定理

$$\def\lra{\leftrightarrow} \def\tx#1{\text{#1}} \def\line#1#2{\ & #1 \quad & \rm{(#2)}\\} \def\linet#1#2{\ …

初学范畴论的一些体会

休学时间正好在家把范畴论学一下,或许对于理解一些抽象的结构能有些许帮助 教材:Basic Category Theory - Tom Leinster, Cambridge studies in advanced mathematics …

初始调整法(贪心)

引例: $证明:圆内接四边形中正方形的面积最大$ $在圆上顺时针任取四点 A , B , C , D 构成凸四边形,固定对角线 AC , 分别令 B , D 在对应的圆弧上自由滑动 .$ $\because S_{四边形 …

welcome

第一篇示例笔记,用来确认公式、代码块和树形标签均已生效。

ss讲课day4

简单图论与构造 A 考虑把权值为 2 的点看作给权值为 1 的点加一, 所以整个问题被拆成了两个部分:构造树和给节点加一 事实上,在第一部分时我们将树构造的尽量平衡是有好处,这个结论在第二个步骤中会得到证明 构造: Process …

ss讲课day3

A 矩阵死了! 这个题是个科技题,但其实也有贪心的哈希做法,只是过于复杂了 联想一下什么东西像括号一样,没有交换律的?是矩阵! 考虑钦定四种左括号分别对应四种不同的可逆矩阵,然后两个串可合并的必要条件是乘积为单位阵 注意到这是必要条件而 …

ss讲课day2

简单dp A 首先枚举时间 $t$,$t\in[0,\max b_i-\min a_i]$,然后对于每个人 $i$ 可以求出一个行李的范围,这个范围的行李满足:这些行李到达 $b_i$ 的时候,时间都大于等于 $t$ 然后不难发现一个单 …

ss讲课day1

网页:https://vjudge.net/contest/684804#overview 简单计数基础 A 注意到一个东西,从一个数 $z$ 变成 $x$ 的方法不唯一 因此先考察一个简单的问题:一个数 $z$ 能不能变成 $x$ ? …

ss讲课day0

简单数学基础 前言 数学是算法的核心 知识清单 莫比乌斯反演 高斯消元 拓展欧几里得 矩阵乘法 逻辑、命题与证明 A - 简单莫反(I) 首先进行一个转化,记 $f(u,v,k)$ 为 $x:1 \sim u;y:1\sim …

PHT2022-10-21

传送门 T1 算贡献 T2 算贡献+矩乘维护动态dp T3 类似于 CCPC2021 K ,用矩乘维护斐波那契和 T4 妙题,就是先让 x[i]=A[i]-B[i] ,然后显然就是要判断何时 $forall$x[i]=0 ,然后就是感性 …

oi博客链接

算法好博客: $\boxed{\text{莫队好博客}}$ $\boxed{\text{生成函数好博客}}$ $\boxed{\text{exkmp好博客}}$ $\boxed{\text{明日方舟防沉迷破解}}$ 套路做法 关于对称图 …

NOIP2022集训10.26

被gtyz供的题创死了,但本质上还是菜… 》 T1 简单想一想就发现其实你不会跳超过 $\log_2$ 次,然后对每个节点维护每种权值对应的下一个元素是谁,可以用一个 last 数组来做,非常简单 》 T2 手玩样例发现 …

NOIP2022集训10.22

cqnk供的题,不知是不是上次给的难度太高,然后被喷了,这次难度直接下了一档 T1 比较 ==noip T1 ,又或者是我刚睡醒脑袋不太好使,反正瞎搞了一会儿才发现其实暴力就行了。具体的就是每次保证至少消掉一辆坦克即可,然后就是模拟 》 …

NOIP2022集训10.20

跟着 lsy 糊正睿的题(主要是要去看妹子体育节) 》 听 lsy 说 T1T2 很水,就没看,直接看 T3 是计数题,大喜,乍一眼看了没啥思路就开始手玩样例,发现实际上是一坨环之间连边,然后继续分析性质,发现每个环只能向大小是自己大 …

NOIP2022集训10.19

成都外国语供的题,说实话由于成外上次给的题直接爆原题,印象非常不好,本来就没怎么看好,结果这场质量竟然还不错? 》 T1 ==noip T1 贪心+分讨,细节比较多,就是要让位数最少,然后注意一些特殊情况,创死人了 》 T2 …

NOIP2022集训10.15

今天做 cmb 花费重金从 hwy 那里买下的题,质量不错? 》 T1 > noip T1 ,看着题面想了将近半个钟发现不会做,然后再读一遍题发现是 $n$ 个点, $n$ 条边,这不基环树吗,降智了,不过对于签到题而言码量还是 …

CF605E. Intergalaxy Trips 与对期望的一些理解

简化题面 给一张无向图,在每一时刻,每一条边权值都为 $1$ ,出现的概率都是给定的(但不完全相同),问最优决策下 $1$ 到 $n$ 的期望。 Attention: 是每条边都会有概率出现,而不是走每条边都会有概率成功,这就意味着,我 …

CF2234G. Stripe, Token and Two Players

记录一个很有意思的观察。朴素的博弈 DP 状态是 $$DP[i,j]:=位置在\ i\ 并且能力为\ j\ 的前提下先手是否必胜\def\la#1{\langle #1\rangle}$$ 然后转移就是 $$\begin{align*} …

CF2232E. Snaking Arrangement

记录一种新颖的排列构造方法。 我们先看一个相对而言更弱的问题,如果初始的时候整个网格是空的,那么有多少摆放方法呢?这个题我们首先需要从蛇的长度限制上获得一个非平凡的观察:摆放的方法远比我们预期的要少 我们作如下的实验:摆蛇先摆长的,之后 …

CF2055E. Haystacks

神奇的贪心题目——对于贪心的总结 记录一下自己的狗屎思路: 考虑固定了遍历顺序的前提下,怎么操作是最优的? 对于每个栈,把栈的元素尽量放入到已经清空过的栈内,放不完的全部丢到最后一个栈里 考虑怎么模拟这个过程: 维护已经清空的栈的空间 …

CF1684F. Diverse Segments

一个和官方题解不大一样的做法,常数略微大一点点,故作文记之。 首先第一点,每一个区间都有可能产生若干个冲突对,然后显然我选择的区间一定要覆盖这些冲突。但是不一定要全部覆盖,其实留出每组冲突对的最左边或者最右边都可以。以及可以感性理解一 …

CF1172C2. Nauuo and Pictures (hard version) 与对条件期望的一些理解

前言 再次看到这一题是在某带砖的思政课上。回忆中,第一次看到这题的时,我尚懵懂,并不会做。如今,将这题推给我的人已功成名就,而我却一无所有,不禁黯然神伤,感慨时移世异以至沧海桑田。兴许能把以前自己不会的题做出来,已然是莫大的安慰,故作文 …

2025年校队选拔Day2的一些口胡

最近忙着背科目一和学范畴论,根本没时间加训 CodeForces - 1439C. Greedy Shopping 刚看到题就想了很久但是不会做,然后发现自己没有注意到序列 $\set{a_i}$ 是单调不增的。首先先考虑问题的弱化形式 …

2025年上海邀请赛的一些口胡

主标题:我是fvv 传送门 https://codeforces.com/gym/105992 原本是打算vp的,但是发现自己的实现能力已经大大下降了,所以干脆就胡题吧,能写就写一点,不能写算了。 H 按照题意模拟即可。 M 思路绕了点 …

2025寒假CFvp教训记录

卷完期末考之后感觉码力下降的厉害,所以就来复健一下 2025.1.24 - Codeforces Round 994 (Div. 2) 没什么难的题目,但是 B 题按错一个字符耽误了将近半个小时 对于 F 题,不难分析出条件为 …

2024年区域赛前训练10.23

传送门 A 简单dp 题意简述 在笛卡尔平面上有 $n$ 个点,初始时你在原点,然后每次只能走到自己的右上方,在开始前你可以把所有点绕着原点旋转某个角度,求能走的最多的点 $n\le 50$ 容易发现一个性质是:任何一种合法的方案,任意 …

2024年ICPC区域赛南京站I题题解

看!一道计数题!我们有救了! 设 $f[x=i]$ 表示值恰好为 $i$ 的方案数,那么答案就是求 $$ans=\sum_{i\ge 0} f[x=i]\cdot i$$ 考虑进行阿贝尔变换,得到: $$\begin{aligned} …

2024年ICPC区域赛昆明站B题题解

前言 成功摄金!世界上没有什么更加美妙的事了 这题在赛时没有做出来,但是感觉实际上是很好处理的,索性就赛后做一下,发现确实不太难 写题解的另外一个原因是代码估计很难写,所以先贷款 另外,很喜欢这种一层一层把思路剥开的题目, 思路 考虑一 …

2024年ICPC区域赛杭州站J题题解

前言 赛时没有做出来,然后赛后被队友嘲讽说是简单题,还搞了一堆奇奇怪怪的容斥加减…… 我认为都是假的,毕竟计数的难点并不在于设计怎样的状态,而在于怎么不算重,我在赛时已经想过很多容斥了,要么会算重,要么就是无 …

【游记】CSP-S2022

[CSP-S2022] 游记 ​ 上午啥都没干,看了看各种板子,同时把自己珍藏的科技小本本给拿出来重新读了几遍,希望可能用得到,之后就开始打 poki ,一把的击杀竟然上了 44 ,应该算是创了记录吧 ​ 我知道自己可能快要退役了,所以 …

【游记】CCPC2022 广州

一大早出门准备去开房顺便吃早餐,把房开好后就到一旁的真功夫吃早餐,不得不说其实还挺好吃的,(起码比学校的好吃…..),早餐吃了一半两位爷就大驾光临了,急忙递上房卡,然后我吃完早餐后速速跑上房间和他们见面。 为了解决吃饭问题 …

【模板】广义fwt

struct matrix{ int a[2][2],n,m; matrix(){} matrix(int x,int y){ n=x,m=y; memset(a,0,sizeof(a)); } matrix operator …

【模板】ntt

int cir[N]; void fft(int *f,int len,int t){ memset(cir,0,sizeof(int)*len); for(int i=0;i<len;++i){ …

【模板】fmt&fwt

FMT struct FMT{ int fmt[1<<N]; void insert(int *f){ for(int i=0;i<n;++i)fmt[i]=f[i]; } void FMT_or(int tag){ …

【模板】FHQtreap

mt19937 rnd(time(0)); struct FHQtreap{ int lc[N],rc[N],val[N],key[N],siz[N],pool,root; int create(int x){ int …

【luogu题解】P3269 [JLOI2016]字符串覆盖 单调队列做法

简单概况一下题意 给定一个母串S与其子串T ,要将T放入母串中 ,在允许相互覆盖或者相交的情况下 ,问这些子串在母串中覆盖的字符 最多/少 是多少 分析 看见最值很容易就往dp上想,但是这题直接dp会有后效性,就是每个串放的位置没有顺序 …

【luogu题解】CF1387A 图上解方程

一个蒟蒻来水本题第一篇题解 分析 首先不难发现一条边$(u,v,w)$表示的是一个方程 $x_u+x_v=w$ ,那么问题就转换为了方程组是否有解,求出绝对值最小解的问题 实现 首先图是不一定联通的,但因为每个连通块是独立的,所以可以分 …

ZR20220816

T1、T3没人会,感觉很没必要 T2:有意思的 dp 题目本质上就是要求一个排列,使得操作次数最少,状压暴力是 $O(2^m m^2n + 2^mm^2)$ 的,考虑可以均摊一下复杂度,发现其实转的次数就是夹在两个元素之间的元素,因此就 …

ZR20220812

妈的挂分挂麻了,怒挂 55+100 分,菜死了 T1 根号分类把,经典结论就是 $\sum a_i=n$ 的话 $a_i$ 至多有 $\sqrt n$ 种取值,且 $a_i\ge\sqrt n$ 的至多 $\sqrt n$ 项 …

ZR20220808

T1 暂时还不会,会60分 今天早上60分卡了一会,一直卡在不知道谁和谁配对,小睡了一下,发现我其实并不关心谁和谁配对,我更关心的是谁对答案造成了正的贡献,而谁造成了负的贡献,因此就是给元素安排 $0/1/-1$ 罢了,而且之前在 和苏 …

ZR20220728

由于今天出山,因此没有报名比赛,只是看题口胡 T1 随便手玩一下样例发现每次就是削去一个半径差为2的环,然后就是大模拟把感觉挺难写的 T2 分析策略知道一定是能合并就合并,一开始想 树形dp 两次但是发现并不会写,然后不难发现至多会合并 …

ZR20220725

真就暴力大赛,其实T1是可以想出来的,但是脑塞了 T1 这题非常阴间,部分分和正解一点关系都没有,这是真的阴间。 部分分就是典型的计算贡献: 把不含加号的极长连续段称之为一段,由于加号之间是独立的,因此每段的所有方案之和本质上只与段长有 …

ZR20220724

T1 有意思的博弈题 题意:总共有 $n$ 堆石子,第 $i$ 堆石子有 $a_i$ 颗石子,两个人轮流取石子,每个人每次可以选择一堆取走若干个石子,但是不能不取,然后每次取走的石子的数量不能多于上一个人取走的石子的数量,以及第一次取石 …

ZR20220723

T1 不会 T2 题意:给定两棵树,统计总共有多少个点对 $(x,y)$ 满足 $x$ 在 $y$ 的子树中, $n\le 300000$ 一开始以为是树形dp,后面假了,因为并不满足 $(x~in~y),(y~in~z) …