自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xzyxzy

康复训练&谜之project

  • 博客(18)
  • 收藏
  • 关注

原创 【ACL Contest1A】Reachable Towns(建图)

题目链接ACL的A题都这么困难吗…一开始交了若干发都是wa的,然后思路转向建图。可以想到一个暴力,如果A可到B,就连边A->B,然后一个连通块内的点互相可达,答案就是所属连通块的大小,这样连边是n^2的。考虑优化建图,将点按x排序后,记录每个点左边能到的最远点和左边y比它小的y最大点,右边能到的最远点和右边y比它大的y最小点,只连这些边,交了一发过了,然而我自己都不太清楚这样为啥对(也许能被hack掉),到时候看看题解的做法吧qwqconst int N=200005;int n,pos[N

2020-09-20 22:49:59 174

原创 【ACL Contest 1C】Moving Pieces(最小费用最大流)

题目链接ACL的A题都这么困难吗…一开始交了若干发都是wa的,然后思路转向建图。可以想到一个暴力,如果A可到B,就连边A->B,然后一个连通块内的点互相可达,答案就是所属连通块的大小,这样连边是n^2的。考虑优化建图,将点按x排序后,记录每个点左边能到的最远点和左边y比它小的y最大点,右边能到的最远点和右边y比它大的y最小点,只连这些边,交了一发过了,然而我自己都不太清楚这样为啥对(也许能被hack掉),到时候看看题解的做法吧qwqconst int N=200005;int n,pos[N

2020-09-20 22:39:40 257

原创 第20次CSP考场经历回忆

好久没有打过比赛了,这次看到CSP报名免费就去玩了一下>_<赛制是只准携带纸质参考资料(不过我没有准备),提交后能实时查看成绩。以下是题目回忆(数据范围不一定准确)。T1:给定二维平面上一些点,求其中离目标点最近的三个点。计算后排序即可。T2:给定二维平面上一个矩形和若干路径,如果路径中存在一个点在矩形中,则称为路径“经过”矩形;如果存在连续k个点在矩形中,则称为路径“逗留”在矩形中,求经过和逗留在矩形中的路径条数。滑动窗口即可,因为数据范围小,暴力好像也可以。T3:给定一个组合电

2020-09-14 16:24:40 655

原创 【Codeforces 1215F】Radio Stations(2-SAT)

题目链接复习一下2-SAT姿势(退役那年day2T1就是2-SAT,好像我挂了10分…2-SAT问题:每个变量取值0/1,求一组变量取值满足一些约束关系。做法是每个变量xxx开两个点x1x1x1和x0x0x0,表示变量xxx选0/1。根据约束关系连边,有向边(a,b)(a,b)(a,b)表示满足了aaa就必须满足bbb。跑一遍Tarjan,如果存在xxx,使得x0x0x0和x1x1x1属于同一...

2019-09-17 15:44:42 562

原创 【Codeforces 1215E】Marbles(状压DP)

题目链接完全想不到正解…结果contest的时候一大堆人过掉了…qwq颜色数只有m=20m=20m=20。我那时的想法,设f[S]f[S]f[S]表示把集合SSS排到最前面时的最小交换数,将这个集合排前面,无论集合内顺序如何,后面剩余部分的相对顺序不变,所以再算一个g[S][i]g[S][i]g[S][i]表示单独考虑SSS集合,把iii排到最前面的最小交换数。然后我发现我算不出ggg…然而...

2019-09-17 13:36:04 674

原创 【Codeforces 1209E2】Rotate Columns (hard version)(状压DP)

题目链接看到easy version想一个大暴力状压DP,设f[i][S]f[i][S]f[i][S]表示考虑前iii列,已经确定最大值的行集合为SSS时,最大值之和的最大值。答案是f[m][(1&lt;&lt;n)−1]f[m][(1&lt;&lt;n)-1]f[m][(1<<n)−1]。转移时,对SSS枚举子集S′S&#x27;S′,f[i...

2019-09-15 18:32:15 605

原创 【Codeforces 1207G】Indie Album(AC自动机)

题目链接听说这学期要学AC自动机所以来复习一下qwq对TTT串构建AC自动机,求出fail树和转移图(to[x][i]to[x][i]to[x][i]表示xxx节点经过字符iii到达的状态)。对于一个SSS串,从自动机的起点开始按转移图逐字符转移,那么TTT串在SSS串中出现的次数,就是TTT串终结点的fail子树内的点在SSS串的转移过程中被到达的次数(重复到达算多次)。注意到SSS串的构建...

2019-09-10 21:48:27 164

原创 【Comet OJ - Contest #10】鱼跃龙门(exgcd/质数姿势)

题目链接以前数学就是我的命门…现在更是一点姿势水平都没有了qwq正好借这道题,回顾一下质数相关的姿势,重学一下exgcd的原理。题目就是要求最小的正整数xxx,满足x(x+1)x(x+1)x(x+1) modmodmod (2N)(2N)(2N) =0= 0=0。设x+1=Asx+1=Asx+1=As,x=Btx=Btx=Bt,其中AB=2NAB = 2NAB=2N,那么As−Bt=1As-...

2019-09-08 15:05:27 496 1

原创 【Codeforces 1217F】Forced Online Queries Problem(分块维护连通性)

题目链接我记得很久以前写过一个离线的O(mlog2n)O(mlog^2n)O(mlog2n)的做法,是向线段树内添加每条边的存在时间,然后在线段树上跑,用可撤销的按秩合并并查集维护连通性。其实离线还有一个分块做法,也用到了可撤销的并查集。如果有一系列的加边/删边操作,我们可以用set维护边的存在性,从而转化为单纯的加边操作,而单纯的加边操作可以用并查集维护连通性。我们把所有操作分块,每块PPP...

2019-09-07 15:35:32 755

原创 【Codeforces 1217D】Coloring Edges(构造)

题目链接无环时答案为111。比赛时我大胆猜了一下有环时答案必为222,凭感觉瞎搞了一个算法:1.拓扑排序,去掉的边标蓝色。如果没有入度为000的点,结束。2.取一个入度不为000的点,将它的入边标红色然后删去,回到步骤1。当时抱着试试的心态交了一发,结果A掉了…因为nnn很小所以我没多想,每次暴力找入度不为000的点,写成了O(n2+m)O(n^2+m)O(n2+m)。如果用链表维护一下入...

2019-09-06 13:20:39 657

原创 【Codeforces 1217E】Sum Queries?(线段树)

题目链接容易发现如果AAA和BBB的某一数位均不为000,那么{A,BA,BA,B}就是unbalanced的;反过来,如果一个集合是unbalanced的,那么集合中必然存在两个数AAA和BBB,它们的某一数位均不为000,否则每个数位不为000的只有一个数,这样的集合显然是balanced的。因此问题转化为维护区间内各个数位不为000的最小的两个数,线段树即可。复杂度O(10∗(n+m)∗l...

2019-09-06 12:53:52 441

原创 【Codeforces1214D】Treasure Island(有向图必经点)

题目链接可以挡住起点旁两个格子,故答案最多为222。若(1,1)(1,1)(1,1)到不了(n,m)(n,m)(n,m),则答案为0。否则记F1[x][y]F1[x][y]F1[x][y]为(1,1)(1,1)(1,1)到(x,y)(x,y)(x,y)的路径数,F2[x][y]F2[x][y]F2[x][y]为(x,y)(x,y)(x,y)到(n,m)(n,m)(n,m)的路径数。如果有一个(x...

2019-09-04 20:52:39 817 1

原创 【Codeforces 1213G】Path Queries(树分治)

题目链接正解应该是按权值从小到大加入边,计算合并联通块的贡献。不过看到这题我第一眼想到的是树分治…很久没写过了正好练习一下。记录ans[x]ans[x]ans[x]为路径上权值最大值恰好为xxx的路径条数。每层分治时记录每个点xxx到根的最大值P[x]P[x]P[x],先把各点到根路径处理完,剩下的就是跨越根的路径。对于不同子树内的两点x,yx,yx,y,路径(x,y)(x,y)(x,y)的上...

2019-09-02 16:37:33 352

原创 【Codeforces 1213F】Unstable String Sort(线段合并)

题目链接开始我想的是对于(i,j)(i,j)(i,j),如果在P中iii在jjj前,而在Q中iii在jjj后,则(i,j)(i,j)(i,j)必须同字母,连条边,最后看看有没有kkk个连通块。然而这是错的,因为如果P[a]P[a]P[a]和P[b]P[b]P[b]位置必须同字母,那么P[a..b]P[a..b]P[a..b]的全部位置都得同字母。想到这里正解就出来了,对每个P[i]P[i]P[...

2019-09-02 00:48:16 445

原创 【Codeforces 1208F】Bits And Pieces(SOS-DP)

题目链接考虑这样一张图:每个点表示为一个二元组(x,y)(x,y)(x,y),其中0&lt;=x&lt;=n0&lt;=x&lt;=n0<=x<=n,−1&lt;=y&lt;=P-1&lt;=y&lt;=P−1<=y<=P,PPP是nnn的二进制位数减一。对于y&gt;−1y&gt;-1y...

2019-09-02 00:24:54 448

原创 【Codeforces 1205C】Palindromic Paths(回文路径DP)

题目链接对于格子(i,j)(i,j)(i,j),若i+ji+ji+j为奇数则称为奇点,否则称为偶点。 首先发现询问距离为2的两个格子就可以知道它们是否值相同。已知(1,1)(1,1)(1,1)格子值为1,(n,n)(n,n)(n,n)格子值为0,一遍BFS可以求出所有偶点的值。 如果(1,2)(1,2)(1,2)格子的值已知,那么再一遍BFS可以求出所有奇点的值。我们...

2019-09-01 11:43:30 328

原创 【Codeforces 1208E】Let Them Slide(单调队列)

题目链接先考虑所有数都非负的情况,即每个位置肯定都要放砖块。我们把位置分成三类:1.每行的前lll个位置,从左往右第iii的位置只能放砖块[1,i][1 , i][1,i];2.每行的后lll个位置,从右往左第iii的位置只能放砖块[l−i+1,l][l-i+1 , l][l−i+1,l];3.这两类位置之间的位置(2∗l&lt;w2*l&lt;w2∗l<w时才存在...

2019-08-27 21:39:47 658

原创 【Comet OJ - Contest #9 & X Round 3】系统设计(树链剖分+线段树维护哈希)

题目链接先进行树链剖分,每次询问时从起点开始,如果是走向轻儿子则直接走,如果是走向重儿子则走到这段重链能走到的最远处,这样只会走O(logn)O(logn)O(logn)次,问题就是怎么找重链上能走到的最远处。定义一个点的代号是它在父亲那的排位,那么问题转化成求从一个点出发由重链向下的最远点,使得路径上点的代号恰好能与序列中的一段匹配。Sol1:由于退役太久已经没啥OI思维了,想了一个蠢办法...

2019-08-27 21:11:09 189

空空如也

空空如也

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

TA关注的人

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