• 2024-11-1011/10
    Link。考虑次小生成树的大小,显然如果加了一条边后再删一条边,删的边权值一定要严格小于加的边,所以就求出所有加的边和删的边权值相同可以加的边数。为何不考虑加的边权值小于删的边?如果存在这种边,显然最小生成树不优。Link。答案显然能取到下限,因为有\(t_j<a_{s_j}\)。Link
  • 2024-10-2110.23 模拟赛
    炼石计划10月05日NOIP模拟赛#9【补题】-比赛-梦熊联盟复盘既然以前做过,复盘貌似不重要了吧?T2很快写完了。T1想到堆就做完了。T3忘了咋做了,好像是个DP但剩下忘了。于是写了暴力分跑路了。T4正解显然不可能会的。打满了暴力。最后T1数组开小挂了\(50\)。
  • 2024-10-12走迷宫
    前言抽象模拟赛,我现在菜的可怕题面疑似自出题,反正不难,就不找原题了挂个pdf题目下载算法考虑建图,如果一个点和相邻点的绝对值\(=2\),则连一条边,然后就变成了一个DAG上dp的计数题目。有向是显然的,无环是因为\(a-x\times2<a\),也是显然的(那我
  • 2024-10-08NOIP2024集训 Day47 总结
    前言人有两次生命,当他意识到只有一次的时候,第二次生命就开始最小生成树和二分图匹配专题,感觉总体都比较套路。但是这些套路为啥感觉见都没见过啊,怪不得做这么慢。色观察到对于最终答案显然都是最小生成树上一条两个端点颜色不同的边。而这个题并不会改变图的形态,仅仅是改
  • 2024-10-05Day 44-45
    linkA显然可以发现有解当且仅当仅保留所有黑色边时,每个连通块存在欧拉回路最小操作次数可以考虑将黑色连通块缩成一个点,然后在原图里一个连通块拿出任意一颗生成树都可以将这里面的黑点全部消掉(走到黑点的时候走欧拉回路,树边都只会经过两次且都是白边)。显然不存在比这个更小的
  • 2024-10-04博弈论专练
    ABC261Ex显然有一个倒序DP\[\begin{cases}f_{i,0}=\min_{i\toj}f_{j,1}+w(i,j)\\f_{i,1}=\max_{i\toj}f_{j,0}+w(i,j)\\\end{cases}\]目标\(f_{S,0}\)可以看作用dijkstra跑最短路。当\(f_{i,1}\)的所有\(f_{j,1}\)确定时才确定\(f_{i,1}\),再将其扔到最短路里面
  • 2024-10-03[NOIP2015 提高组] 子串
    算法状态定义最初显然可以想到\(f[i][j][k]\)表示\(A\)串前\(i\)个,\(B\)串前\(j\)个,分割了\(k\)个子串但是这样无法递推\(k\)维于是加上一位\(f[i][j][k][0/1]\),最后一维表示是否选择\(A\)子串当前这一位,也就可以递推的计算状态转移当前位置不使
  • 2024-09-08NOIP 模拟赛 Round5
    T1:赛时一眼秒了,然后爆单了。没有什么思路就要想到一些套路比如把模拆成减除,然后发现有个\(k\),自然思路就出来了,\(k\)必然是一个数的因数。复杂度是根号的。注意特判\(s=0,s<0\)!!!T2:一眼二分贪心……显然不能优化建图按照a排序也是显然的。T3:最唐的地方是所有人都在考虑
  • 2024-07-22同余关系
    同余关系在基本概念的部分中,我们已经简单了解了整除与余数而在这一个部分中,我们将更复杂的了解余数中的同余关系由于本节内容多在模意义下讨论,故文中可能会出现一些\(=,\equiv\)混用的情况,见谅此处获取本节调试数据/代码包全文绝大多数内容是对[0]中讲
  • 2024-06-24[题解]CF1665E MinimizOR
    思路发现\(2^k\)大的数,最终的答案一定由前\(k+1\)小的元素组成。考虑数学归纳法,显然当\(k=1\)成立。假令\(k'\)时成立,证明\(k=k'+1\)时成立即可:若第\(k\)位有两个及以上的\(0\),显然最终答案的第\(k\)位一定为\(0\),因此考虑前面的\(k-1\)位,显然取
  • 2024-03-07P8386 [PA2021] Od deski do deski
    P8386[PA2021]Oddeskidodeski挺奇怪的一个转移式,还是套路看少了一开始想到的是分治,像卡特兰数那样求但是发现两端相同这个限制的去重不好处理,没法划分子问题就比如样例的\(4~2\),显然包含\(1~1~2~2\)这种情况当我们求\(6~2\)时,如果划分成\(4+
  • 2024-02-13会议
    这其实就是最小边覆盖我们对任意一种选边的操作序列,显然每一条边要么使一个点被覆盖,要么使两个点被覆盖,而使两个点被覆盖的边肯定不会超过最大匹配,所以一个上界就是选出最大匹配的边,然后剩余的点再依次选择一条边,而这个上界显然是合法的,所以最后有
  • 2024-01-29CF1764H Doremy's Paint 2 题解
    题目链接:CF或者洛谷高分题,感觉挺有意思的题,值得一提的是这个题的\(1\)和\(3\)版本却是两个基础题。一开始以为跟这道差不多:P8512[YnoiEasyRound2021]TEST_152题解。后面重新读了一下发现一个有趣的点:也就是是说操作的\(val\)并不太好搞了,如果\(val\)确定就基
  • 2023-11-08项链游戏
    [无link]对于该策略证明:1如果只比较一次,显然2如果比较了k次,证明两个串前k个元素是相同的,第k+1个元素不同,那么我选择1-k-1中任何一个位置开始比较,答案都不会更优,因为如果新串第K+1个元素更大,那么显然K+1个元素会大于1-k的元素,那么显然以k+1开头更有可能更优,如果第K+1个元素更
  • 2023-11-04牛客练习赛117 C&D
    LinkC分类讨论贪心显然的,正面考虑怎么拼团会很麻烦,所以我们从另一个视角考虑,求出可能的最大团数,然后看一看怎么踢人能够使落单的最少。当K为偶数的时候,显然最大团数就是\((n+m*2)/k\),而当K为奇数的时候,显然男生抱团需要至少一个男生,女生抱团也需要至少一个男生,最大团数就是\(m
  • 2023-10-11P3586 [POI2015] LOG
    原题先写我复杂度错误的一个思路:首先每次选最小的\(c\)个做显然是优秀的,贪心性质显然,打表找一下答案?12302-13-1+11003-24-2+1+2-120004-3+15-3+2+3-23
  • 2023-10-01CF1873G ABBC or BACB
    思路首先发现,无论是AB变BC,还是BA变CB,最重要的都是A,因为B的数量不会变化,C既不是变化所需要的,数量还会变多,只有A是需要的并且数量还会变少。首先思考AB变BC的情况,什么情况下可以继续变化呢?很显然AB前还有A就可以继续变化,而后面因为C的出现是不可能继续变化的,
  • 2023-08-23[刷题笔记] Luogu P2285 [HNOI2004] 打鼹鼠
    ProblemAnalysis我们初始可以任意决定机器人的位置,状态很多,暴力显然会寄掉。不妨先贪心的思考一下。我们肯定希望机器人初始在最先出现鼹鼠的洞,因为出现在没有鼹鼠的洞是无效的。题目保证输入数据是严格按照出现时间递增顺序给出。定义\(f_i\)表示前\(i\)只鼹鼠最多能打到
  • 2023-08-01Practice on Codeforces and Atcoder in May
    CF补题题解2023.5说明:CF题直接去luogu看翻译,AT题会附上简要题意CF1821E先考虑如何高速计算权值一个显而易见的贪心是尽量在右边取括号消除,设右括号为1,左括号为-1那么我们每一次消除的括号\(i,i+1\)都满足了\(i+1\)的右边剩下的全部是右括号,代价就是往右数的个数更进一
  • 2023-07-02P9170 填数游戏 贺题记录
    感觉进行对于此类困难问题对于我是很有educational的意义的。这个题考虑贺ZCPB伟大的SD队长的方法。妈的,考场上写了B先A后的弱智做法。Pre-Task很自然的,考场上我也会的先想到\(T_{i,0}\toT_{i,1}\),这样有解得方案显然是树或者基环树的若干森林拼起来。然
  • 2023-05-20CCPC2023 河南省赛
    和零时加的队友打了一下,计算几何摆了,最优化摆了,adhoc摆了。A.小水獭游河南枚举前缀,是\(O(|\Sigma|)\)的,然后判断一下是不是回文串即可。B.ArtforRest昨天才做过这个套路的加强版。显然只用判断类似\(\max(a,b)<\min(b+1,c)\)的条件。暴力枚举是调和级数的。E.矩阵
  • 2023-03-09杂题乱做3
    补了一些讲过的远古题和近期的CF2000分以上的部分题。CF1764H题意:有序列\(a_n\),初始\(a_i=i\),给定\(m\)个修改操作\([l_i,r_i]\),修改方式是把区间内所有数赋值成
  • 2023-02-03威尔逊定理
    定义:为质数或者可以写成:为质数或者说:若为质数,则能被整除证明:必要性:利用反证法证明:假设不是质数,且是。易知,则而,前后矛盾!故充分性关于充分性的证明,如果直
  • 2023-01-15随机打乱
    概述某些题目的数据,如果顺序随机,将会有非常美妙的结论。但显然,除非写了“保证数据随机”(事实上,没给generator的随机都可以认为是构造...),否则出题人不会这样给数据
  • 2022-12-16算重学(2) 函数式编程的发扬光大&点分治&边分治
    引入首先,一个朴素的想法,如何统计树上点对信息?定义solve(x)表示解决以\(x\)为根的树的问题。显然它的答案为solve(son_x)+儿子间相互的统计接下来,你考虑断掉\(x\)