FSY的好题汇总
文章平均质量分 83
FSY暑假写的比较认真的博客就放在这儿了吧
FSYo
我不去想是否能够成功,
既然选择了远方,
便只顾风雨兼程
展开
-
Codechef November Challenge 简要题解
Chef and the Combination Lockfif_ifi 表示需要 ≥i\ge i≥i 次操作的方案数fi=∏max(0,aj+1−i×2)f_i=\prod \max (0,a_j+1-i\times 2)fi=∏max(0,aj+1−i×2)找到 t=min(ai+1)/2t=\min (a_i+1)/2t=min(ai+1)/2求 ∑i=1tfi\sum_{i=1}^t f_i∑i=1tfi注意到 fif_ifi 是关于 iii 的 NNN 次多项式我们只原创 2020-11-17 12:47:03 · 459 阅读 · 0 评论 -
HDU 多校 Contest #2 简单记录
To DoCookieIntegral CalculusBlood Pressure GameCount on a Tree II Striking BackDynamic Convex HullKing of Hot PotContest #2A从大到小贪心加入,用并查集合并CodeE把对称轴周围的 nnn 个点拿出来跑费用流codeF大力 HashHashHash,代码当然是神仙队友的codeG二分答案后,邻 dpi,jdp_{i,j}dpi,j 表示 iii 的子原创 2020-07-28 23:50:02 · 277 阅读 · 1 评论 -
HDU 多校 Contest #3 简单记录
A每次询问 Sa...b,Sc...dS_{a...b},S_{c...d}Sa...b,Sc...d,保证是回文串,表示询问哪个更优秀优秀的定义是每次随机字符,随出来的串长期望最短首先是歌唱王国,我们设匹配到就结束的 GF 是 F(x)F(x)F(x),匹配到后不结束的 GF 为 G(x)G(x)G(x)那么求的就是 F′(1)F'(1)F′(1),根据定义可以列出恒等式:F(x)+G(x)=xG(x)+1F(x)+G(x)=xG(x)+1F(x)+G(x)=xG(x)+1以及 G(x)(原创 2020-07-28 23:37:24 · 225 阅读 · 2 评论 -
Codechef July Challenge 简要题解
Missing a Point把出现次数为奇数的行列找出来Chefina and Swaps贪心,注意可以将一个很小的换过来再换回去Doctor Chef注意到我们的策略就是不断把 XXX 搞成最大值,中途顺便搞定一些国家没有搞定的国家可以通过一次操作搞定考虑这么一个 DPDPDP,dpidp_idpi 表示 i...ni...ni...n 的贡献最小值(其中没有搞定的有 1 的贡献)dpi=mindpj+times(i,j)+j−i−1dp_i=\min dp_j+times(i,j)原创 2020-07-16 10:43:31 · 438 阅读 · 0 评论 -
【省选模拟】20/05/07
AAA考场写的假掉了,呜呜呜,但是过掉了考虑序列的话最优的一定是一个区间,在平面上的话最优的是一个斜着的矩形压 4 个边界,转移考虑暴力枚举一个点,将它到矩形之间的插入,复杂度 O(n8)O(n^8)O(n8)codecodecodeBBB考虑 fi,jf_{i,j}fi,j 为点 iii,第 jjj 个人的胜负情况,不妨令 −1,0,1-1,0,1−1,0,1 表示 AAA ...原创 2020-05-07 20:26:56 · 182 阅读 · 0 评论 -
【省选模拟】20/05/04
BBB:合法的连边出来是个二分图,问题转换为每个点有一个最大经过次数的限制,每一步只能走到相邻点,问先手必胜的点这是一个二分图博弈问题,一个简单的版本是一个点只能经过一次,那么有结论,可能不在最大匹配上的点必败,可能不在指的是存在一个最大匹配没有它存在,因为考虑这个最大匹配,当前点走到的任意点一定在最大匹配上,那么后手可以顺着最大匹配走,并且最后走到先手的集合,如果走到后手的集合那么就找...原创 2020-05-04 23:51:51 · 254 阅读 · 0 评论 -
【省选模拟】Tree(DP)(分类讨论)
传送门分类讨论有点 nbnbnb,考虑 dpudp_{u}dpu 表示把 uuu 是当前的左上角,且之前的全部填满,将 uuu 的子树填进去的方案数如果儿子个数为 1,那么存在以下情况-系数分别是 1,dpv,1,dpx,dpz1,dp_v,1,dp_x,dp_z1,dpv,1,dpx,dpz,合法的链满足只有中间两个点儿子个数不为 1,其余儿子数均为 1 或 0,这个可以...原创 2020-04-27 22:11:03 · 215 阅读 · 0 评论 -
【省选模拟】20/04/24
AAA编了一万年的细节然后调了一万年 。。。很明显要分类讨论,考虑如下几类:直接走下去用一次 homehomehome 然后走下去走到中间用一次 endendend 或不用 endendend 走下去先到上面用一次 endendend 或不用 endendend 再走下去走下去然后再往下走用 endendend 或不用再走上去并且这几种决策是互不干扰的,考虑维护一下第三种:考...原创 2020-04-24 21:25:15 · 196 阅读 · 0 评论 -
【省选模拟】20/04/18
AAA直接最小表示把串搜索出来,系数是一个下降幂codecodecodeBBB颜色太多我们没有办法做,考虑将颜色映射到 [0,k)[0,k)[0,k) 中的数,然后每次钦定必须出现 [0,k)[0,k)[0,k) 的颜色这么做很明显会错过最优答案,得到最优答案的概率是 k!/kkk!/k^kk!/kk,所以大概做 500 次就有 95%95\%95% 的概率做对,必须出现 [0,k...原创 2020-04-18 08:36:29 · 202 阅读 · 0 评论 -
【省选模拟】20/04/16
传送门A题意:给定 n≤1e5n\le 1e5n≤1e5 个点 (i,yi)(i,y_i)(i,yi),m≤4e5,q≤1e5m\le 4e5,q\le 1e5m≤4e5,q≤1e5 次操作,操作可以单点修改,区间将 yiy_iyi 变成 A−yiA-y_iA−yi,询问 [l,r][l,r][l,r] 中 ax+by+cxyax+by+cxyax+by+cxy 的最大值,数据随机考...原创 2020-04-16 19:52:35 · 153 阅读 · 0 评论 -
【省选模拟】20/04/14
AAA首先有结论就是每次删最大数最优606060 分做法:预处理 fi,jf_{i,j}fi,j 表示后 666 位最大值为 iii,前 666 位为 jjj 时删成负数的最少次数,顺便记录删成负数后为多少注意到这个过程本质上是考虑后 iii 位除个位不为 9 均为 9,然后删一轮后将 i+1i+1i+1 删成负进位为 9,基于此,我们令 fi,j,kf_{i,j,k}fi,j,k 表...原创 2020-04-14 17:28:48 · 155 阅读 · 0 评论 -
【题目泛做】学军信友队欢乐赛
A死在了构造题上,在疯狂 debug 中结束了比赛,结果发现外围方向反了,如果这道题先做了的话就可以有 362 的大众分,结果挂得只有 260+对于奇数有如下构造:对于偶数,可以旋转 90 度#include<bits/stdc++.h>#define cs const#define pb push_backusing namespace std;int read...原创 2020-04-06 00:26:28 · 353 阅读 · 0 评论 -
【题目泛做】学军信友队欢乐赛 E (线段树)(凸包)(单调栈)
神题考虑维护上界和下界,下界是个区间求和上界是个阶梯状的(前缀 maxmaxmax 和 后缀 maxmaxmax)假设询问全部是 [1,n][1,n][1,n],那么我们预处理一个点在 [li,ri][l_i,r_i][li,ri] 的时间内作为前缀最大值然后按时间排序,插入当前作为最大值的点,线段树维护这个单调栈的贡献现在需要解决区间是 [l,r][l,r][l,r] ...原创 2020-04-06 00:25:43 · 288 阅读 · 0 评论 -
【省选模拟】20/04/03
SetSetSetans=∑i=1uTi(n−it)ans=\sum_{i=1}^{u}T^i\binom{n-i}{t}ans=∑i=1uTi(tn−i),其中 u=n−k+1,t=k−1u=n-k+1,t=k-1u=n−k+1,t=k−1,然后推式子S=∑i=1uTi(n−it)ST=∑i=2u+1Ti(n−i+1t)(T−1)S=Tn−k+2(k−1t)−T(n−1t)+(∑i=1...原创 2020-04-03 18:58:02 · 203 阅读 · 0 评论 -
【省选模拟】20/04/02
AAA考虑维护儿子的和,链加和链求和,每个点的贡献在父亲处算一遍,这样除 lcalcalca 以外的点的贡献都可以统计到,处理 lcalcalca 的贡献是个单点加,父亲的儿子贡献单点加,父亲权值单点加和父亲的父亲的儿子贡献单点加,询问同样让一个点的贡献在父亲统计,然后求出在 lcalcalca 处的贡献即可,树剖 O(nlog2n)O(n\log^2 n)O(nlog2n) CodeC...原创 2020-04-02 14:06:19 · 176 阅读 · 0 评论 -
「JOISC 2020 Day3」星座 3 (DFS序)(笛卡尔树)(DP)
传送门建出笛卡尔树,假设当前处理 [l,r][l,r][l,r],高于最大值的星星只能保留一个一颗星星可以定位到上述的唯一一个区间,所以我们可以枚举这一棵星星选了这颗星星的话会 banbanban 掉一些区间的星星,而这个在笛卡尔树上是一条链如果令 f,gf,gf,g 表示当前区间不选 / 选星星,那么 banbanban 掉的就是强制不选星星于是我们维护插值,dfsdfsdfs + ...原创 2020-03-25 23:38:53 · 501 阅读 · 0 评论 -
「JOISC 2020 Day2」变色龙之恋 (交互题)(分治)(并查集)
传送门O(n2)O(n^2)O(n2) 做法:两两查询一次,那么给颜色数为 1 的数对连边,那么一个点可以连出 1 或 3 条边对于一条的可以直接确定,对于 3 条的,假设当前位 iii,它喜欢的为 xxx,喜欢它的为 yyy,颜色相同的为 zzz,那么当且仅当查询 (i,y,z)(i,y,z)(i,y,z) 时为 1,如果我们给 (i,y),(i,z)(i,y),(i,z)(i,y),(i...原创 2020-03-25 00:06:17 · 434 阅读 · 0 评论 -
【省选模拟】20/03/21 (「USACO 2020.1 Platinum」)
CavePaintingsCave PaintingsCavePaintings考虑一层与上面一层的连边,最后会连成一个森林,一个点选了它的子树必须都选,于是做一遍树形 dpdpdp 就可以了,建边可以用并查集模拟CodeCodeCodeNon−DecreasingSubsequencesNon-Decreasing SubsequencesNon−DecreasingSubsequen...原创 2020-03-24 13:12:13 · 302 阅读 · 0 评论 -
【省选模拟】20/03/04
calculuscalculuscalculus显然可以发现,出题人用了很多奇怪的方法包括增长题面,使题面晦涩难懂,定义新的位运算,输入一堆奇怪的式子来增加题面难度题意,你有 k≤4k\le 4k≤4 个变元 x1…xkx_1\dots xkx1…xk,分别可以取真或假,有两种运算 ∼,⊗\sim,\otimes∼,⊗,表示取反和 a⊗b=(∼a)∣ba\otimes b=(\sim...原创 2020-03-05 10:34:04 · 202 阅读 · 0 评论 -
【省选模拟】20/02/29
「2017 山东一轮集训 Day1」Sumdpi,jdp_{i,j}dpi,j 表示和为 iii 模为 jjj 的个数,p2p^2p2 枚举 jjj ,iii 是一个卷积,于是就可以快速幂了复杂度 O(mlog(n)log(m)p+mp2log(n))O(mlog(n)log(m)p+mp^2log(n))O(mlog(n)log(m)p+mp2log(n))#include<b...原创 2020-02-29 16:00:08 · 176 阅读 · 0 评论 -
【省选模拟】20/02/29
题目 ptfptfptfT1:\text{T}1:T1:nnn 个点带标号每个连通块大小 ≤A\le A≤A 的森林个数暴力 dpdpdp:dpi=∑j=1Adpi−j(i−1i−j)jj−2dp_i=\sum_{j=1}^{A}dp_{i-j}\binom{i-1}{i-j}j^{j-2}dpi=∑j=1Adpi−j(i−ji−1)jj−2然后发现可以直接 expexpexp,...原创 2020-02-29 15:41:10 · 147 阅读 · 0 评论 -
【NOIP模拟】20/02/15
n≤100,M≤1e9n\le 100, M\le1e9n≤100,M≤1e9直接 dpdpdp,dpi=∑j≤⌊ni⌋dpjdp_i=\sum_{j\le \lfloor \frac{n}{i} \rfloor}dp_jdpi=∑j≤⌊in⌋dpj,前缀和优化,只有 m\sqrt mm 个有用位置#include<bits/stdc++.h>#define cs...原创 2020-02-15 22:57:21 · 146 阅读 · 0 评论 -
【省选模拟】20/02/14
n≤1e12,T≤1e6,1sn\le 1e12, T\le 1e6,1sn≤1e12,T≤1e6,1s设二者答案为 fi,gif_i,g_ifi,gi,对于 fif_ifi 我们的策略是先把 i−1i-1i−1 个移动到第 3 个,再把当前移动一步,再把那 i−1i-1i−1 个移两步,那么就有 fi=2∗gi+1f_i=2*g_i+1fi=2∗gi+1对于 gig_igi ...原创 2020-02-14 15:06:02 · 186 阅读 · 0 评论 -
【省选模拟】20/02/11
题目 pdfpdfpdf感觉最近智商好低,T1T1T1 写的正解被自己送成了 101010 分,然后一直推 T2T2T2 根本没有检查 T1T1T1 然后 T3T3T3 的暴力也没有打,最后群上催着收卷草草交卷成功爆炸在家里 testtesttest 也要讲究策略, 该打的暴力要打,该拍的题要拍非常时期不能因为在家里考试就耍水偷懒!题解:T1:注意到如果确定一个中心点过后,我们可...原创 2020-02-11 17:44:08 · 220 阅读 · 0 评论 -
【省选模拟】20/02/08
题目 pdfT1:T1:T1: 题意,在一棵 nnn 个点的树上放 mmm 个男的 mmm 个女的,两两配对,最优配对方案为距离总和的最大值,问这个值的期望一个部分分是只有一条权值 >0>0>0 的边,那么这种情况假设左边放 x,yx,yx,y 个男女,那么贡献就是(min(x,m−y)+min(y,m−x))∗ways(min(x,m-y)+min(y,m-x))*w...原创 2020-02-09 16:20:12 · 194 阅读 · 0 评论 -
【NOIP模拟】20/02/09
BZOJ4504BZOJ4504BZOJ4504 K个串题解:考虑用数据结构维护以一个点为右端点时,每一个左端点的答案考虑新增一个数的贡献,就是对一个左端点的区间的区间加于是用主席树实现区间加,堆维护每一个右端点的最优答案取出最优答案后将那个位置改为 −INF-INF−INF 即可+CodeCodeCodeBZOJ4503BZOJ4503BZOJ4503 两个串题解:FFTF...原创 2020-02-09 16:04:32 · 240 阅读 · 0 评论 -
省选模拟 20/02/02
Contest 传送门T1:T1:T1:考虑直接贪心,每次把最优的两个顺着往后放,需要保证选出来的两个合法也就是第一个数在它所在的段的奇数位,第二个数与第一个数在不同位选出来过后有会多两个断点分成 3 段然后就是在所有合法位置中选一个最小的再删除我的沙雕做法:考虑到增加断点过后会有奇数段变成偶数段,于是乎建两棵 splaysplaysplay,互换子树维护集合最小值即可其实正解就...原创 2020-02-04 00:00:56 · 161 阅读 · 0 评论 -
「NOI2019」I 君的探险 (交互题)(随机化)(整体二分)(二进制)
传送门一道很有趣的交互题测试点 1−51-51−5,直接 nnn 次修改 n2n^2n2 次查询就可以了测试点 6−96-96−9,这一部分是两两配对的点,可以整体二分改一半然后查令一半,如果有显然是与前一半配对还有一个骚气解法是让每个点有 1/21/21/2 的概率被修改,显然同色的是连了边的,递归处理测试点 10−1110-1110−11,这是一颗上面结点比下面小的树,问题转换为确定...原创 2019-11-28 22:50:10 · 470 阅读 · 1 评论 -
CSP-S 2019 树上的数 (贪心)(链表)(并查集)(思维)
考完过后心情不太好,下午躺床上看了出题人写的题解,有了一些想法,记录下来首先请大家不要喷 t3t3t3 的出题人了,题真的是一道好题,只是可能放错了位置题意根据考场回忆:给定一棵树,有点权,为1−n1-n1−n,你可以按一个顺序删 n−1n-1n−1 条边,每次删边会调换连接这条边的两个点的权值,最后按点权排序,求结点编号的字典序最小的解,输出结点编号最小字典序,n≤2000n\le200...原创 2019-11-16 17:26:54 · 2735 阅读 · 0 评论 -
CSP-S 模拟 19/11/14
n≤501,k≤10n\le 501,k\le 10n≤501,k≤10考虑到最后结束的位置一定是一个 TTT,迪杰预处理两个宝藏直接的最短路状压 dpdpdp 即可#include<bits/stdc++.h>#define cs constusing namespace std;typedef long long ll;int read(){ int cnt = 0...原创 2019-11-14 17:15:37 · 199 阅读 · 0 评论 -
NOIP 2017 逛公园(最短路)(Tarjan)(记忆化搜索)
传送门先考虑没有 000 边的情况求出 1 到 nnn 的最短路,用 fi,jf_{i,j}fi,j 表示到当前点,比最短路多 jjj 的方案数f1,0=1f_{1,0}=1f1,0=1,fu,j=fv,j−(dis[v]+w[i]−dis[u])f_{u,j}=f_{v,j-(dis[v]+w[i]-dis[u])}fu,j=fv,j−(dis[v]+w[i]−dis[u])从 ...原创 2019-11-13 19:24:14 · 165 阅读 · 0 评论 -
CSP-S 模拟 19/11/09 学园祭的游戏(博弈论)(SG)(整除分块)
第一次考场写博弈论,好激动暴力求 sgsgsg 函数还是很好做的sg(x)=mex(sg(i))(x−xbi≤i<x)sg(x)=mex(sg(i))(x-\frac{x}{b_i}\le i< x)sg(x)=mex(sg(i))(x−bix≤i<x)然后把表打出来过后发现sg(x)=sg(x−xbi−1)(x%bi!=0)sg(x)=sg(x-\frac{x...原创 2019-11-09 16:26:00 · 279 阅读 · 0 评论 -
CSP-S 模拟 我的订书机之恋(随机化乱搞)(巧妙建图)(LCA)
考虑一个 rrr 哪些 lll 可以作为它的答案就是不存在一个弦的左括号在区间内右括号在区间外或者左括号在区间外右括号在区间内开始想的是打一个差分标记然后判断是不是为 0,发现凉了因为存在这种情况:一个右括号在里面左括号在外面,左括号在里面右括号在外面回到原来的问题,给定一个区间,问存不存在更这个区间交叉的区间于是我们可以给每个区间分配一个 valvalval,在 l,rl,rl,r ...原创 2019-11-06 17:00:41 · 316 阅读 · 1 评论 -
CSP-S 模拟 19/10/24
Tom首先,早香肠和晚香肠一定把树分成两个联通块,并且 aaa 与 −b-b−b 联通于是可以枚举 (a,−b)(a,-b)(a,−b) 的边,看一下 sizesizesize 的大小是不是 aaa 或 bbb然后对于两边 dfsdfsdfs 一遍,需要让每一个点比它的儿子小,按 dfsdfsdfs 序编号即可#include<bits/stdc++.h>#define ...原创 2019-10-24 21:47:57 · 297 阅读 · 0 评论 -
省选模拟 19/10/22 Gosling (括号序列) (区间DP) (重链剖分思想优化)
传送门看上去不可做…两个树相同,可以转换为括号序列相同看看操作在括号序列上的体现生长:在任意位置添加一个括号,费用为括号的权值 * c1c_1c1伸展:在一个子树的两端填加括号,费用为括号权值 * c1c_1c1收缩:删除一个括号转换:改一个括号的权值最后需要让两颗树的括号序列相同首先 1,2 操作都可以看做添括号,添括号相当于在另一边删括号考虑 dpdpdp,令 fl...原创 2019-10-23 21:00:16 · 196 阅读 · 0 评论 -
数据结构好题汇总 (19/10/23)
HEOI2013 Segment类似标记永久化,每个区间保留那个区间的最大线段,单点查的时候取 maxmaxmax 即可找到线段的区间过后,考虑用它去覆盖这个区间的线段如果全部比当前优,就覆盖如果部分优,分类讨论:1.左边高,中间高 ---- 左区间全部为当前,递归处理右区间2.左边高,中间低 ---- 递归处理左区间右边同理AHOI2014 奇怪的计算器考虑用线段树维护以每一...原创 2019-10-23 20:03:59 · 328 阅读 · 0 评论 -
图论好题集锦 (19/10/21)
前言:主要练了一些最短路,网络流,数据结构优化建图,感性理解了二分图 HallHallHall 定理HDU 5503有 N(N≤50000)N(N≤50000)N(N≤50000) 支球队,每两支球队之间都会有一场比赛,没场比赛胜利记1分否则记0分,给出这N支球队的分数,问能否构造出每场比赛的结果,使得最后的分数成立?解:首先可以球队向原点连 aia_iai 的边,比赛向两个球队连边,跑...原创 2019-10-21 21:00:45 · 378 阅读 · 0 评论 -
NOI.AC CSP-S 模拟 Round 4 简要题解
比赛链接T1一个数,有贡献,当前仅当包涵它的区间个数为奇数发现区间长度为偶数时没有贡献,答案为 0长度为奇数时贡献是第 1,3,5...1,3,5...1,3,5... 个数,预处理两个前缀异或和即可T2结论题,orz发现对于一个联通块,如果边数 - 点数为偶数,一定可以有一种方案使得全部都是奇数如果边数 - 点数为奇数,一定可以有一种方案使得只有一个点是偶数于是并查集维护一下...原创 2019-10-20 16:51:12 · 223 阅读 · 0 评论 -
NOI.AC CSP-S 模拟 Round 3 简要题解
比赛链接T1一看就是整除分块的形式,如何整除分块发现对于 j≤ij\le\sqrt ij≤i,⌊ij⌋\left \lfloor \frac{i}{j }\right \rfloor⌊ji⌋ 对应这唯一的值,暴力乘对于 j≥sqrtij\ge sqrt ij≥sqrti,⌊ij⌋\left \lfloor \frac{i}{j }\right \rfloor⌊ji⌋ 的值可能有一段区...原创 2019-10-20 16:41:41 · 289 阅读 · 0 评论 -
CSP-S 复习总结 ---- DP
前言:最近刷了一些水题CH5E26题意:一副不含王的扑克牌由52张牌组成,由红桃、黑桃、梅花、方块4组牌组成,每组13张不同的面值。现在给定 52 张牌中的若干张,请计算将它们排成一列,相邻的牌面值不同的方案数计数 dpdpdp考虑到剩 1 张花色,剩 2 张花色 … 本质是一样的令 fa,b,c,df_{a,b,c,d}fa,b,c,d 表示还剩 aaa 种剩一个花色的,bbb 种...原创 2019-10-17 20:35:33 · 649 阅读 · 0 评论