02 2019 档案
摘要:"传送门" 两种做法,一种是依次考虑每种字符,然后如果某个位置是该字符或者是$ $对应的值就是1,否则是0,然后把第一个串倒过来,fft卷积起来,最后看对应位置的值是否为m 然而上面那个做法在字符集大小过大的时候会GG,所以考虑一次性匹配,如果不考虑通配符$ $,设(开头)位置i的匹配函数为$f(i
阅读全文
摘要:"传送门" (下面记年龄为$a_x$)题目要求的是$$\sum_{x=1}^{n} [a_x\in [l,r]] dis(x,u)=\sum_{x=1}^{n} [a_x\in [l,r]] de_x+\sum_{x=1}^{n} [a_x\in [l,r]] de_u 2 \sum_{x=1}^{
阅读全文
摘要:"传送门" md这题和矩阵树定理没半毛钱关系qwq 首先先不考虑有环,一个$DAG$个外向树个数为$\prod_{i=2}^{n}idg_i($就是$indegree_i)$,因为外向树每个点入度为一,对于一个点有入度个父亲可选,然后乘法原理起来就是答案 现在可能加一条边会有环,那么答案可以考虑总方
阅读全文
摘要:"传送门" 其实这题难点在于处理路径包含关系 先求出树的dfn序,现在假设路径$xy$包含$uv(dfn_x define LL long long define db double define il inline define re register using namespace std; c
阅读全文
摘要:"传送门" 我们把一种方案的$\sum a_{i,j}$和$\sum b_{i,j}$看成点$(\sum a_{i,j},\sum b_{i,j})$,那么就只要求横纵坐标之积最小的点,类似于最小乘积生成树 首先跑出$\sum a_{i,j}$最小和$\sum b_{i,j}$最小的,得到的点记为$
阅读全文
摘要:"传送门" 首先根据题目条件,题目中如果是=的点可以缩起来,然后$a define LL long long define db double define il inline define re register using namespace std; const int N=100+10,mo
阅读全文
摘要:"传送门" "吐槽题目标题" 这个依赖关系是个树,可以考虑树型dp,~~设f_i表示子树i的答案~~ 因为这是个序列问题,是要考虑某个数的位置的,所以设$f_{i,j}$表示子树i构成的序列,i在第j个位置的方案.转移依次合并儿子$y$,每次枚举一个位置j,以及枚举儿子$y$的序列中有k个数放在插前
阅读全文
摘要:"传送门" 显然我们可以先算出每种卡牌在整场游戏触发概率,然后乘上权值,加起来就是答案 然而一个卡牌触发了,后面会直接跳过,这个看着很烦 注意到一个卡牌触发概率和自身概率以及前面牌的情况相关(和在哪一轮触发无关).设$f_{i,j}$表示 整场游戏 中前i种牌触发了j种牌的概率,每次转移只要讨论第i
阅读全文
摘要:"传送门" 这什么题啊,乱搞就算了,不知道SPFA已经死了吗 ~~不对那个时候好像还没死~~ 暴力就是删掉边后跑~~Dijkstra~~ SPFA 然后稍微分析一下,可以发现题目中要求的不经过最短路某条边的路径,一定是先在最短路上走,然后走不是最短路的边,然后走回在最短路上的点走完最短路,因为绕两次
阅读全文
摘要:"传送门" 这题又是我什么时候做的(挠头) 首先是个和SG函数有关的博弈论,SG=0则先手必败.显然一堆石子就是一个游戏,而若干堆石子的SG值就是每堆SG的异或和,所以算出每堆石子SG就能知道答案 然后怎么求SG,根据定义,一个局面SG是后继局面SG的$mex$,我们枚举某堆石子(有x个)分成多少堆
阅读全文
摘要:"传送门" ~~谢特运输~~ 先要搞懂题目是什么意思,简化版题意就是一棵有根树,要使得每个点都满足任意一个儿子的权值等于这个点权值除以儿子数量,问最少要修改多少个点的点权 就可以一边dfs求出每个点权值是点1的多少倍,显然一个方案至少要有一个点的权值没有被改,所以一个暴力是枚举某个点权值没有被改,然
阅读全文
摘要:"传送门" 我是什么时候写的这题的qwq 首先,发现关键点的总数被限制了,很自然想到虚树,并且,对于一个关键点,他管理的点显然是一个联通块 然后把虚树先建出来,然后两次dfs,第一次是向祖先更新离每个点最近的关键点是哪个,然后第二次向子树更新,这样就能得到每个虚树上的点属于哪个集合 然后还要考虑不在
阅读全文
摘要:"传送门" ~~nmdwsm~~ "自己看吧,不想写了qwq" 垃圾代码如下 ~~和题解完全不一样~~ cpp include define LL long long define uLL unsigned long long define il inline define re register
阅读全文
摘要:"传送门" 考虑只有一个询问,怎么使用暴力枚举最快的得到答案.因为要求最大的,所以可以把链按权值从大往小排序,然后往后扫,找到一个没有交的就是答案,直接退出 一堆询问,可以考虑整体二分,先二分一个值$mid$,然后从前往后扫,如果是加入/删除操作,并且权值$ mid$就把这个操作贡献记上;如果是询问
阅读全文
摘要:"传送门" 先考虑暴力,显然每次是把一个位置集合和另一个集合合并,同时维护答案,合并的过程中如果两个集合每有一对元素相邻,答案就减1 优化暴力的话,说到合并,怎么能不想起启发式合并呢?每次把一个大小小的集合并到大的上面,如果一个元素合并一次是$O(1)$,总复杂度就是$O(nlogn)$.实现的化可
阅读全文
摘要:"传送门" 这题真简单,~~直接把$CDQ$给ban掉了~~ 其实数据范围比较小可以直接二维树状数组,我们看数据范围,发现点的个数比N还小,可以考虑用一些~~奇怪~~的数据结构 ~~说的就是你,$KD tree$~~ $KD tree$就是一个K维的二叉查找树(是吧),一维的二叉查找树就是我们所熟悉
阅读全文
摘要:"传送门" 这题如果没有删除操作,可以直接使用可持久化并查集 注意到这种可持久化的依赖关系(~~是这样说的把~~)是一棵树,然后对于一个点,自己的操作会影响自己的那棵子树,并且如果是删除操作,就会使得一个子树没有加入操作.如果考虑了dfn序,那么每个操作影响的都是一个连续区间,一个删除操作会把一个加
阅读全文
摘要:"传送门" ~~这是个远古巨坑阿qwq~~ 没有历史最大值还是能比较好做的.可能会有一个想法,就是直接维护线段树每个结点出现过的历史最大值,每次最大值变化就更新.但是有个问题:可能一个点能影响历史最大值的标记还没被及时下放,就被父亲标记覆盖了,这样就可能得到错误答案 考虑新定义标记$(a,b)$,表
阅读全文
摘要:"传送门" 这题真的是送温暖啊qwq,而且最重要的是yyb巨佬在Day2前几天正好学了crt,还写了博客 ~~然而我都没仔细看~~,结果我就同步赛打铁了QAQ 我们可以先根据题意,使用set维护,求出每次的攻击力 然后对于一条龙,要使得砍到生命值能加到0,那么 攻击力$a_i$ 次数$x$ 要和 血
阅读全文
摘要:"传送门" orz 远航之曲 因为答案最大可以取到$10^{23}$,所以要选择三个乘积$\ge 10^{23}$的质数(见代码),分别算一遍,然后crt起来 注意这里要这样crt: 首先三个同余式为$ans\equiv a1(mod\ m1)$$ans\equiv a2(mod\ m2)$$ans
阅读全文
摘要:"传送门" 神仙题鸭!orz dkw 暴力就是完全背包 而完全背包可以和生成函数扯上关系,记第i种物品质量为$a_i$,那么这种物品的生成函数$G(i)=\sum_{j=0}^{\infty}x^{a_ij}$,最后体积为i的答案即为这n个生成函数的卷积的第i项系数 然而用卷积复杂度为$O(mnlo
阅读全文
摘要:"传送门" 我们看要求的东西$$\sum_{i=1}^{n}\sum_{j=1}^{m}[\sigma(gcd(i,j))\le a]\sigma(gcd(i,j))$$ 然而$\le a$比较烦,可以先去掉这个限制 没有这个限制,我们显然可以枚举每个k,求出gcd为k的数字对数,然后乘上$\sig
阅读全文
摘要:"传送门" ~~颓~~了一小时柿子orz 首先题目要求的是$$\sum_{x_1=l}^{r}\sum_{x_2=l}^{r}...\sum_{x_n=l}^{r}[gcd(x_1,x_2...x_n)=k]$$ 显然可以除掉一个k,设$x=\lceil\frac{l}{k}\rceil,y=\lf
阅读全文
摘要:"传送门" 这题居然暴力有95,,, 先考虑暴力,$AABB$显然可以看成两个相邻的$AA$,记$a_i$为以i为结尾的$AA$个数,$b_i$为以i为结尾的$AA$个数,可以直接哈希统计每一种,答案为$\sum_{i=1}^{n 1}a_ib_{i+1}$ 然后考虑优化统计答案,首先枚举一种长度$
阅读全文
摘要:"传送门" ~~mdzz~~,为什么这题有个贪心的标签啊qwq 首先考虑每一种车间,对于每相邻两个车间,在中点左边那么左边那个会贡献答案,在右边就右边那个更优 所以总共会有m 1个这样的分界中点,然后 最多 有m+1个(头尾也算)区间,满足在区间内选点其他的贡献答案的车间是固定的 假设贡献答案的车间
阅读全文
摘要:"传送门" ~~一堆人说 ,我连gcd都不会,菜死算了qwq~~ "Orzyyb" 这题欺负我数学不好qwq 首先可以发现实际上有如下操作:x或y±2a,x或y±2b,x+a y+b,x+b y+a(后面两个也可以看做减) 然后可以考虑先只用$2a$或$2b$去凑(x,y),但是因为后两个操作,也可
阅读全文
摘要:双倍经验 "传送门" 首先坐在一起的cp和不坐在一起的cp是相对独立的,可以分开考虑,然后方案数相乘 坐在一起的cp,方案为$\binom{n}{k} \binom{n}{k} k! 2^k$.首先选出k排座位,然后选出k对cp坐下,然后这k对可以任意打乱顺序,并且每一对可以换座位 不坐在一起的cp
阅读全文
摘要:前言 ~~如您所见这又是一篇咕了的文章,直接咕了10天~~ 好久没打CF了 ~~所以还是个蓝名菜鸡~~ 机房所有人都紫名及以上了,wtcl 这次前4题这么水~~虽然不知道为什么花了1h~~,结果不知道为什么搞到一半出锅了,后面直接unrated了qwq ~~虽然如果是rated我就掉成newbie了
阅读全文
摘要:"传送门" dalao们怎么状态都设的两维以上啊?qwq 完全可以一维状态的说 设$f[i]$为前缀i的答案,转移就枚举从前面哪里转移过来$f[i]=min(f[j 1]+w(j,i))(j\in [1,i])$ 现在要知道$w(i,j)$怎么写,也就是区间$[i,j]$的最小长度( 要求区间最多只
阅读全文