自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(231)
  • 收藏
  • 关注

原创 AFO

两个月前的今天的早晨,衢州二中的第一机房,8:00~13:00,ZJSX1-053。考完以后,和ljn lch在球场打球,互奶。也许我是能发现T1T2爆炸的地方,但考试最后时刻焦躁又平静的心情也不允许我这么做了。是个半途而废的人。Day1是爆炸了,爆炸得很惨。可能早在知道分数之前就准备好AFO了。下午一直蜷缩在位置上漫无目的地刷着知乎,也不知道时间过的是快还是慢。是一种很奇怪的心态...

2018-05-21 22:56:36 2939 4

原创 ZJOI 2018

从NOIP2017到THUWC2018就预感自己很快就要退役了呢。 果然ZJOI2018就退役了呢。

2018-03-21 22:04:08 1189

原创 [背包DP] UOJ #181. 【UR #12】密码锁

SolutionSolutionSolution因为这是一张竞赛图,所以把强连通分量缩起来以后回事一条链的情况。 那么强连通分量的数量就是相当于缩起来以后的点的数量。 对于图 G(V,E)G(V,E)G(V, E) 来说,这样的点集 S⊆VS⊆VS \subseteq V ,满足两个点集的边是这样的关系 e∈E^={(u,v)|u∈S,v∈V−S}e∈E^={(u,v)|u∈S,v∈V−S...

2018-03-16 13:54:02 611

原创 [生成函数][DP] Codeforces 891 E. Lust

SolutionSolutionSolution设最后是这个样子 a=(ai−bi)a=(ai−bi)\textbf{a}=(a_i-b_i) ,可以通过数学归纳得到 res=∏iai−∏i(ai−bi)res=∏iai−∏i(ai−bi)res=\prod_{i}a_i-\prod_{i}(a_i-b_i) 那么考虑组合意义:E∑ibi=k∏i(ai−bi)==k!∏ibi!1nk∑∑ibi...

2018-03-14 10:26:08 531

原创 [多项式ln][多项式exp][生成函数] LOJ #6268. 分拆数

SolutionSolutionSolution设分拆数的生成函数F(x)=∑k≥0fkxkF(x)=∑k≥0fkxkF(x)=\sum_{k\ge0}f_kx^k几个显然的等式就是F(x)lnF(x)===∏k=1∞11−xk∑k=1∞ln11−xk∑k=1∞∑i≥1xkiiF(x)=∏k=1∞11−xkln⁡F(x)=∑k=1∞ln⁡11−xk=∑k=1∞∑i≥1xkii\begin{eq...

2018-03-13 20:54:26 796

原创 [Contest]CodeChef March Challenge 2018

MIXCOLOR:每次把一个数加上最大的数一定能保证最优。 XXOR:从高到低枚举贪心。 MINVOTE:算一下前缀后缀最值,差分一下。 GCDCNT:推一下式子,每个因子开一颗线段树,只要考虑 μ2(x)≠0μ2(x)≠0\mu^2(x)\neq0 的。 PSHTRG:对于最大的三条边 a≤b≤ca≤b≤ca\le b\le c ,如果不合法,显然的如果 a≤b2a≤b2a\le{b\o...

2018-03-13 10:47:31 308

原创 [交互][FWT] UOJ #328. 【UTR #3】量子破碎

SolutionSolutionSolution矩阵 A=[111−1]A=[111−1]A=\left[\begin{matrix} 1 & 1 \\ 1 & -1 \\\end{matrix}\right] 好像就是 FWTFWT\text{FWT} 的变换矩阵。 对每一位都变换以后,考虑FWT的式子。 fS^=∑T⊆U(−1)|S∩T|fTfS^=∑T...

2018-03-13 08:12:47 463

原创 [单调队列][决策单调性DP] BZOJ 2216: [Poi2011]Lightning Conductor

SolutionSolutionSolution考虑 j≤ij≤ij\le i 和 j>ij>ij\gt i 。 ansi=max{aj+|i−j|−−−−−√−ai}ansi=max{aj+|i−j|−ai}ans_i=\text{max}\{a_j+\sqrt{|i-j|}-a_i\} 有决策单调性,单调队列。#include <bits/stdc++.h&g...

2018-03-12 13:25:37 303

原创 [FNT][DP][矩阵] Codeforces 947 E - Perpetual Subtraction

SolutionSolutionSolution暴力DP很简单fi,j=∑k≥jfi−1,kkfi,j=∑k≥jfi−1,kkf_{i,j}=\sum_{k\ge j}{f_{i-1,k}\over k} 因为转移形式都一样,可以写出转移矩阵。A=⎡⎣⎢⎢⎢⎢⎢⎢1n+10⋮01n+11n⋮0⋯⋯⋱⋯1n+11n⋮1⎤⎦⎥⎥⎥⎥⎥⎥A=[1n+11n+1⋯1n+101n⋯1n⋮⋮⋱⋮00⋯1...

2018-03-12 07:34:31 1075 1

原创 [Manacher][线段树] Codeforces 100032 K - Subpalindromes

SolutionSolutionSolution%%%%%%%%%%%%%%%%%%%%%%%%LargestJN大佬教我做题。 大佬说有点麻烦的大概就是这个东西min{i−L,R−i,len}min{i−L,R−i,len}\text{min}\{i-L,R-i,len\}。 大佬说如果在询问的中点处将询问分开,回文中心在一边的就可以去掉一个minmin\text{min}里的东...

2018-03-11 19:14:32 417 1

原创 [DP][容斥原理] 2017 TCC India Online Div1 Hard ConsecutivePalindromes

SolutionSolutionSolution考虑其反面,就是不存在一个子序列是回文串。 实际上需要考虑的只有连续的两个和三个字符。因为其他情况都已经包含在这个之中。 设dpi,l,0/1,0/1,0/1dpi,l,0/1,0/1,0/1dp_{i,l,0/1,0/1,0/1}表示考虑到iii,长度为lll,i,i−1,i−2i,i−1,i−2i,i-1,i-2是否选取的状态为0/10/...

2018-03-11 16:16:27 254

原创 [回文自动机][DP] Codeforces gym 100543 G - Virus synthesis

SolutionSolutionSolution考虑在回文自动机上DP fufuf_u表示回文自动机中uuu节点所代表的回文串最少需要几次才能得到lenulenulen_u为奇数,fu=lenufu=lenuf_u=len_u。lenulenulen_u为偶数,fu=min(fp+1,fhalfu+(lenu2−lenhalfu)+1)fu=min(fp+1,fhalfu+(lenu...

2018-03-11 15:19:40 277

原创 [贪心] 2012 TCO Algorithm Round 1C - Division I, Level Three PasswordXPalindrome

SolutionSolutionSolution如果是奇数先把中间swap好。把无解的判掉。 因为每个字母出现不超过2次。 考虑把字母sisis_i和sn−i−1sn−i−1s_{n-i-1}连起来。 显然会形成若干个环。 我们要把这个图调整成全部是自环的情况。 一个做法就是交换环上相邻的字母所在的位置。// BEGIN CUT HERE// END CUT HERE#...

2018-03-10 17:37:27 286

原创 [DP][容斥原理][斯特林数] Codeforces715 E - Complete the Permutations

SolutionSolutionSolution先dfsdfs\text{dfs}出四个量c1,c2,cyc,blkc1,c2,cyc,blkc1,c2,cyc,blk表示缩边以后x→ 0x→ 0x\rightarrow~0,0→x0→x0\rightarrow x,自环和0→00→00\rightarrow0的边的数量。 fifif_i表示用c1c1c1可以搞出至少ii...

2018-03-09 15:34:53 887

原创 [DP][容斥原理] ARC064 F - Rotated Palindromes

SolutionSolutionSolution要求的就是长度为 nnn 的可通过循环位移得到回文串的串的本质不同的个数。 我们考虑枚举长度为 x(x|n)x(x|n)x(x|n) 的回文串作为其最小循环节来计数。 可以发现回文串的循环节也是循环的。那长度为 xxx 的循环节为 k⌈x2⌉k⌈x2⌉k^{\lceil{x\over2}\rceil} 种。 但这样求出来的并不是作为最小循环...

2018-03-08 13:39:30 360

原创 [分治][Trie][prufer数列] 51Nod 1601 完全图的最小生成树计数

SolutionSolutionSolution考虑从高位到低位枚举。 显然是把相同的放在一边,不同的找到权值最小的连边,这个可以TrieTrie\text{Trie}。 这样分治下去,最后得到一个没有限制的联通块,贡献就是sizesize−2sizesize−2size^{size-2}。 因为偷懒写了vectorvector\text{vector},还必须得预处理nn−2nn−2n...

2018-03-07 21:14:44 343

原创 [DP][分治] 51Nod 1934 受限制的排列

SolutionSolutionSolution一个显然的想法就是去找最小的那个数。 最小的数的 lll 和 rrr 就应该是 111 和 nnn 。 因为这是一个排列,我们把问题从最小值处 pospospos 分开,得到两个一样的问题 (1,pos−1)(1,pos−1)(1,pos-1) 和 (pos+1,n)(pos+1,n)(pos+1,n) 。设区间长度为 lenlenlen ,...

2018-03-07 18:45:28 391

原创 [最短路图][DP] ARC090 E - Avoiding Collision

SolutionSolutionSolution刚开始读错题+1 首先转化为总方案数减去不合法的方案数。 先建出最短路图。DP出从S,TS,TS,T到每个点的方案数fu,gufu,guf_u,g_u。 考虑在边上还是点上相遇。 点上的话就考虑disT=2disudisT=2disu\text{dis}_T=2\text{dis}_u的点,贡献是f2ug2ufu2gu2f_u^2g_u^...

2018-03-07 16:10:25 511

原创 [后缀自动机][树上启发式合并] LOJ #6041. 「雅礼集训 2017 Day7」事情的相似度

SolutionSolutionSolutionO(nn−−√logn)O(nnlog⁡n)\mathcal{O}(n\sqrt n\log n)的莫队连500005000050000都过不了qwq。%%%gjghfdgjghfd教我SAM+树上启发式合并的做法。 每两个后缀的贡献会在LCA处统计到。 一个暴力的想法就是枚举LCA,那就只需要考虑子树中的点对。有实际贡献意义的就...

2018-03-07 10:23:30 469

原创 [多项式ln][多项式exp][背包DP][生成函数] LOJ #556. 咱们去烧菜吧

SolutionSolutionSolution就是个背包DP咯。 答案长这个样子ans=[xn]∏i=1m1−xaibi+ai1−xaians=[xn]∏i=1m1−xaibi+ai1−xaians=[x^n]\prod_{i=1}^m{1 - x^{a_ib_i+a_i}\over 1-x^{a_i}}考虑取个lnln\lnlnans=∑i=1m(ln(1−xaibi+ai)−ln(1−...

2018-03-06 14:45:00 854

原创 [多项式ln][多项式exp][多项式求幂][生成函数][DP][FNT] BZOJ 3684: 大朋友和多叉树

SolutionSolutionSolution把DP写成生成函数的形式。f(x)=x+∑d∈Dfd(x)f(x)=x+∑d∈Dfd(x)f(x)=x+\sum_{d\in D}f^d(x)设g(f(x))=xg(f(x))=xg\big(f(x)\big)=x,有g(f(x))g(x)==f(x)−∑d∈Dfd(x)x−∑d∈Dxdg(f(x))=f(x)−∑d∈Dfd(x)g(x)=x−∑...

2018-03-06 13:00:59 783

原创 [斯特林数] Codeforces 932E. Team Work

SolutionSolutionSolution可能也算是裸题了咯。 求∑i=1n(ni)ik∑i=1n(ni)ik\sum_{i=1}^n{n\choose i}i^k用斯特林数把ikiki^k展开。∑d=0kd!S(k,d)(nd)2n−d∑d=0kd!S(k,d)(nd)2n−d\sum_{d=0}^kd!S(k,d){n\choose d}2^{n-d}O(k2)O(k2)\math...

2018-03-06 07:08:21 393

原创 [NTT][DP][树链剖分][分治] LOJ #6289. 花朵

SolutionSolutionSolutionfu,0/1,ifu,0/1,if_{u,0/1,i}表示uuu子树中选了iii个点,uuu选不选的答案。 转移显然就是一个卷积的形式。 考虑重链剖分。 先把轻儿子卷到根,这样只需要考虑重链。 再考虑重链上的DP。 考虑头尾选不选gu,0/1,0/1gu,0/1,0/1g_{u,0/1,0/1}。这也是个卷积,可以分治+FFT。#i...

2018-03-05 16:48:57 842

原创 [DP][CDQ分治] BZOJ 4553: [Tjoi2016&Heoi2016]序列

SolutionSolutionSolution设位置iii最大可变成ririr_i,最小lilil_i。 fifif_i为iii位置的答案。容易得到fi=max{fj+1|j<i,rj≤ai,aj≤li}fi=max{fj+1|j<i,rj≤ai,aj≤li}f_i=\text{max}\{f_j+1|j\lt i, r_j\le a_i,a_j\le l_i\}把(rj,aj...

2018-03-03 13:52:07 277

原创 [后缀数组][trie合并][启发式合并][并查集] LOJ #6198. 谢特

SolutionSolutionSolution求出后缀数组heightiheighti\text{height}_i后。 问题转化为maxi≠j{mini<k≤j{heighti}+(wi xor wj)}maxi≠j{mini<k≤j{heighti}+(wi xor wj)}\text{max}_{i\neq j}\{\text{mi...

2018-03-02 19:09:21 485

原创 [DFT][Matrix-Tree定理][高斯消元] LOJ #6271. 生成树求和 加强版

SolutionSolutionSolution可以把每位分开来做。 这样每一位都是一个长度为3的循环卷积。 DFTDFT\text{DFT}后就是独立相乘了,可以矩阵树定理。 考虑三次单位根ω3,1+ω3+ω23=0ω3,1+ω3+ω32=0\omega_3,1+\omega_3+\omega_3^2=0。 如何证明a=b=0a=b=0a=b=0是a+bω=0a+bω=0a+b\om...

2018-03-02 14:38:01 730

原创 [Bluestein's Algorithm][DFT] CodeChef REALSET

SolutionSolutionSolution由F(b)≠0,F(a∗b)=0F(b)≠0,F(a∗b)=0\mathcal{F}(\textbf{b}) \neq \textbf{0},\mathcal{F}(\textbf{a}*\textbf{b})=0可以得到F(a)F(a)\mathcal{F}(\textbf{a})至少有一项为000。 考虑aa\textbf{a}向量的DFT...

2018-03-01 21:42:56 602

原创 [期望DP] SRM 579 Div1 Hard RockPaperScissors

SolutionSolutionSolutionE(x)=∑x∈AScore(x)×P(x)E(x)=∑x∈AScore(x)×P(x)E(x)=\sum_{x\in A}Score(x)\times P(x) 只要考虑投了mmm轮得到(r,p,s)(r,p,s)(r,p,s)的概率和分数就好了。 概率可以这样DP。 ft,i,r,p,sft,i,r,p,sf_{t,i,r,p,s}表示...

2018-02-28 11:29:57 284

原创 [主席树][单调栈] BZOJ 4369: [IOI2015]teams分组

SolutionSolutionSolutionki∈[Aj,Bj]ki∈[Aj,Bj]k_i\in[A_j,B_j]相当于点(Aj,Bj)(Aj,Bj)(A_j,B_j)在(ki,ki)(ki,ki)(k_i,k_i)的左上方。 那对于(ki,ki)(ki,ki)(k_i,k_i)左上方的区域,有些点是在之前操作中已经被删掉的。 剩下的一些矩形的并。 画一下图,这些矩形的下边界是不升的...

2018-02-28 09:42:21 481

原创 [博弈论][二分图匹配][网络流] LOJ #536. 「LibreOJ Round #6」花札

SolutionSolutionSolution这是一个Undirected Vertex Geography。 可以 O(n3)O(n3)\mathcal{O}(n^3) 对每个点得到答案。 UVG游戏中 (G,v)(G,v)(G,v) 即图 GGG 中先手在 vvv 必胜的充要条件是 vvv 在所有最大匹配中。 证明:(充分性:)假设 vvv 在包含它的最大匹配 MMM 中: ...

2018-02-27 10:10:27 640

原创 [线段树分治][DP] LOJ #534. 「LibreOJ Round #6」花团

SolutionSolutionSolution操作相当于是动态的做一个背包DP。 离线的话,线段树分治一下。 因为结尾是已知的,可以一边分治,得到一个修改操作,就插到线段树。 只要保证分治从左到右,每个操作都在线段树上得到了实现。 1.5×1041.5×1041.5\times10^4可以跑O(n2logn)O(n2log⁡n)\mathcal{O}(n^2\log{n})了解一下。...

2018-02-26 20:59:17 564

原创 [线段树] LOJ #535. 「LibreOJ Round #6」花火

SolutionSolutionSolution现将所有数转化为二维平面上的点(i,hi)(i,hi)(i,h_i)。 几个性质:交换两个数(i,j),(i≤j,hi>hj)(i,j),(i≤j,hi>hj)(i,j),(i\le j, h_i\gt h_j),减少了的逆序对数是矩形((i,hi),(j,hj))((i,hi),(j,hj))\big((i,h_i),(j,...

2018-02-26 19:30:19 573

原创 [生成函数] HackerRank Count Fox Sequences

SolutionSolutionSolution这是个有序的序列,只要计算一个数出现了最多次,最后乘mmm就好了。 枚举出现了kkk次。 那剩下的就是∏i=1m−1(∑j=0k−1xj)=(1−xk)m−1(1−x)1−m∏i=1m−1(∑j=0k−1xj)=(1−xk)m−1(1−x)1−m\prod_{i=1}^{m-1}\bigg(\sum_{j=0}^{k-1}x^j\bigg)=...

2018-02-26 10:36:33 306

原创 [DP] SRM 452 Div1 Hard IncreasingNumber

SolutionSolutionSolution刚开始自己脑补了一个O((123)m2logn)O((123)m2log⁡n)\mathcal{O}\big({12\choose3}m^2\log{n}\big)的做法。。大概就是dpi,lo,hi,jdpi,lo,hi,jdp_{i,lo,hi,j}表示考虑iii位,以lololo开头以hihihi结尾,模mmm为jjj的方案数。然后倍增DP...

2018-02-26 08:22:27 247

原创 [DP] 51Nod 1301 集合异或和

SolutionSolutionSolution感觉是挺有趣的一道题qwq 枚举AAA和BBB从高到底第一个不同的位kkk。 A<BA<BA\lt B可以转化成A xor B∈[2k,2k+1]A xor B∈[2k,2k+1]A~xor~B\in[2^k, 2^{k+1}],且B or 2k=BB or&n...

2018-02-25 17:22:50 306

原创 [数论][Lucas定理] 51Nod 1778 小Q的集合

SolutionSolutionSolution通过枚举⌊im⌋⌊im⌋\lfloor{i\over m}\rfloor和imodmimodmi\bmod m。由Lucas定理是可以独立计算贡献的。 ans====∑i=0n(ni)(ik−(n−i)k)2∑i=0n(⌊nm⌋⌊im⌋)(nmodmimodm)(ik−(n−i)k)2∑i=0⌊nm⌋(⌊nm⌋i)∑j=0nmodm(nmodm...

2018-02-25 11:37:08 298

原创 [平等博弈][SG函数][字典树合并] BZOJ 4730: Alice和Bob又在玩游戏

SolutionSolutionSolution记SuSuS_u为uuu到根的链的子树的SG函数值的集合。 考虑从子树转移到根。 一种是去掉根,就是把所有子树异或起来。 一种操作在子树内,相当于把子树的SSS异或上子树的SG异或和。 集合异或上一个数可以打标记。 集合的合并可以用字典树合并。 求mexmex\text{mex}可以二分。#include <bits/s...

2018-02-24 19:23:04 412

原创 [树的dfs] Codeforces 717 E. Paint it really, really dark gray

SolutionSolutionSolution又是这个idea。。。 大致就是自下向上调整每个点,把调整的媒介丢给父亲。 最后特判一下根就好了。#include <bits/stdc++.h>#define show(x) cerr << #x << " = " << x << endlusing namespace...

2018-02-23 15:45:25 231

原创 [不平等博弈][DP] TCO 2017 Final Div1 Medium GameOfTokens

SolutionSolutionSolution先考虑已知模板串的情况。 如果出现ABB这样A的个数比B的个数少的,那么A是不可能会向左走的。 整个模板串就会因为这个分隔开成若干个独立游戏。 我们要计算每个游戏的值的和。 维护两个变量ansansans和curcurcur分别表示A能比B多走ansansans步,当前游戏A的个数比B的个数多几个。 显然的有以下三个转移:patt...

2018-02-22 23:05:59 332

原创 [交互题] ARC070 F - HonestOrUnkind

SolutionSolutionSolution有一句话叫作人多力量大。 所以真的人多就能判断出来qwq 一个简单的想法是找出真的人。 一个办法可以构造一条有向的链,如果这条链中有真的人,那么就可以得到链头是真的人。 发现aaa说bbb是假的说明aaa和bbb之间必有一个假的。可以把他们消掉。 具体的操作的话可以维护一个栈,每次询问栈顶和当前枚举到的。 这样剩下mmm个人。 因为...

2018-02-22 20:48:02 373

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除