集训2
文章平均质量分 62
hxxtcl
这个作者很懒,什么都没留下…
展开
-
DAY 13
今日得分:20+20+70T1题目大意:题解:然而,我成功地调了一天这个代码,死活跑不过去,随机数据下表现还挺优异。最终要了数据发现跑的次数不对,定睛一看,发现……原代码:bool operator <(que x,que y){if(gx[x.l]!=gx[y.l])return dfn1[gx[x.l]]<dfn1[gx[y.l]];return dfn2[gx[x.r]]<dfn2[gx[y.r]];}改后代码:bool operator &l原创 2021-05-01 20:44:21 · 669 阅读 · 4 评论 -
Day 12
今日得分:25+100+20T1题目大意:给定一棵n个节点的树,节点编号为1~n,初始时每个节点都未被占领。两个人轮流操作,每人每步操作会占领一个未被占领的节点,直到所有节点都被占领为止。 定义树上两点的距离为它们之间最短路径的边数,所有操作结束后,游戏的分值为先手占领的所有节点两两间的最大距离。先手希望这个分值尽可能小,而后手希望这个分值尽可能大。如果两人都采取最优策略行动,请问游戏的最终分值是多少。n<=1e5。题解:AC代码:#include<iostream&g原创 2021-04-30 20:36:53 · 1157 阅读 · 5 评论 -
DAY 11
今日得分:90+0+0(T1卡常。。。)T1题目大意:你有两个字符串A和B。求A的子串中,有多少存在一个子序列,可以由B经过下列变换变为:对于一个字符串,每次取出开头的字符,将其插入到一个初始为空的双端队列的开头或结尾,最后双端队列从左到右形成的串即为变换后的串。|A|<=4096,|B|<=2048。题解:考虑每次考虑能匹配B的前i位的所有子串(l,r),不难发现对于每一个r,只有最近的l有贡献,l同理。于是扫一遍即可。时间复杂度O(nm)。(然而卡常,建议打表)AC代码:原创 2021-04-29 20:56:39 · 161 阅读 · 2 评论 -
DAY 10
今日得分:34+5+4(我每一天都以为今天的题是最毒瘤的,我每一天都感觉今天的题比前一天的毒瘤)(但貌似分数有所提升?)T1题目大意:L<=18,Q<=5e5题解:考虑分块维护,修改时维护后b位所有情况的值,询问时遍历前L-b位所有情况的值,取b=8,加上一些特判即可做到O(Q*2^8)的复杂度。需要卡常。某大佬的该题题解AC代码:#include<iostream>#include<cstdio>#include<cstr原创 2021-04-28 21:33:41 · 140 阅读 · 3 评论 -
DAY 9
今日得分:5+35+0(忘删调试了。。。)(好在比前两天加起来的分高)T1题目大意:定义排列的乘法如下:对于h=f*g,h[i]=g[f[i]](1<=i<=n)。求长度为n,且满足P^(m+1)=P的排列个数,要求m为满足条件的最小正整数。n<=15000,m<=1e9。题解:不难发现排列构成若干个置换环,满足要求的排列中,所有置换环长度的lcm等于m。考虑莫比乌斯反演(看到lcm就可以往这方面想了),问题变为求x为置换环长度的lcm的约数的排列个数。发现有贡献的x很少原创 2021-04-27 21:34:55 · 122 阅读 · 2 评论 -
DAY 8
今日得分:2+10+4(今天的T1和T3是原题,然而我并没做过,惨遭毒瘤。。。)(不过好像大家也没太写)T1题目大意:题解:T2题目大意:题解:T3题目大意:题解:原创 2021-04-26 21:29:39 · 137 阅读 · 2 评论 -
DAY 7
今日得分:0+7+10(惨)T1题目大意:给你一个平面直角坐标系,初始位置在(0,0),该点权值为1,每次顺时针找到第一个整点,该位置的权值为上一个点的权值+1,多组询问,每次询问在第一象限内的一个矩阵中所有整点位置的权值之和对2^63取模。坐标<=1e18,q<=1e6。题解:对于"-|",容易发现每一个"-|"的和是(2i+1)^3+(2i+1)^2+(i+1)(考虑每一个平方项i^2都是i个数的平均值,只需考虑最下面一行即可)。对于"|",我们可以先求出最底下一行的和,原创 2021-04-23 20:51:06 · 399 阅读 · 6 评论 -
DAY 6
今日得分:100+36+100(^_^)T1题目大意:有n个敌人,每个敌人有一个生命值w和攻击力s,有A+B个队友,其中A个每次能消灭一个生命值<xi的敌人,B个每次能消灭一个攻击力<yi的敌人,每人每次只能消灭一个敌人,问最少多少次能把所有敌人消灭,无解输出-1。n<=5e5,A,B<=5e4,1<=x,y,w,s<=2e9。题解:二分答案,将敌人按照w排序,问题转化为判断一个答案是否合法。从大到小看w,每次把xj>wi的Aj找出,计算总共找出的A能不原创 2021-04-22 20:35:53 · 195 阅读 · 4 评论 -
DAY 5
今日得分:100+10+0。(T2T3有点毒瘤)T1题目大意:给你一张n个点n条边的无向图,满足每条边形如(i,t[i],w[i]),两人轮流操作,每次可以选择一条未被选择的边,要求选择后已选择的边不能出现环,直到不能操作为止。先手希望选择的边权值之和最小,后手希望选择的边权值之和最大,求最终选择的边的权值最大。n<=1e5,t1<=[i]<=n,w[i]<=1e6。题解:容易发现,每条边最多在一个简单环中,且最终一定是在每个环中找出一条边不选,其余的边全选。于是我们可以原创 2021-04-21 18:13:21 · 643 阅读 · 8 评论 -
DAY 4
今日得分:100+20+0。T1题目大意:定义树T0为一个点,T[i]是将T[X[i]]的u[i]点和T[Y[i]]的v[i]点用权值为w[i]的边连起来得到,得到的T[i]中来自T[X[i]]的部分编号不变,来自T[Y[i]]的部分编号加上size[X[i]],对每棵树求树上每两点距离之和对1e9+7取模。n<=300,0<=X[i],Y[i]<i,w[i]<=1e9,u[i],v[i]<=1e18,保证每棵树的大小不超过2e18。题解:m很小,考虑把每个会作为u原创 2021-04-21 12:21:30 · 166 阅读 · 2 评论 -
DAY 3
今日得分:20+100+39(终于在考场上A题了)T1题目大意:给你一个长度为n的01字符串,定义(A*k)(k>=2)为S=A+A+…+A(k个A)的合法压缩,可压缩一个合法压缩串,两个合法压缩串连在一起也是一个合法压缩串。求给定01字符串的子集(与原串的与等于自身的串)的合法压缩方案之和对998244353取模的结果。n<=100。题解:每次枚举最后一段压缩的串,记忆化搜索强制全压缩的串和不强制全压缩的串,dp即可。状态数可以证明不是很多(上界是O(n^3+2^(n/8)),但这原创 2021-04-19 20:19:27 · 170 阅读 · 3 评论 -
DAY 2
今天得分:0+5+60(打表yyds!)T1题目大意:给你n种砖块,每种砖块有a[i]块。有两种操作,第一种是选定一个长度,消除这个长度的长度个砖块,若该长度砖块个数<长度, 那么只消除一个。第二种是选择一个砖块,将它拆成两个长度之和为原长度的砖块(两砖块长度非0且这两个砖块的长度至少有一个为奇数)。两人轮流操作,先不能操作的人输。问先手是否必胜。n<=1e6,a<=1e9。题解:把奇数和偶数分开来算,奇数部分的sg函数为所有奇数位置之和mod 2,每一个偶数位置的sg函数为原创 2021-04-17 21:14:54 · 251 阅读 · 4 评论 -
DAY 1
(某咕咕咕的人在咕咕咕了咕咕咕天之后,又准备开始写博客了)今天得分:30+0+0。T3算错了空间爆零了。。。T1题目大意:一个圆上有3n个不同的点,每个点都被染成了n种颜色中的一种。每种颜色恰好出现了3次。对每种颜色画一条圆弧,满足其两端点的颜色都是c且不经过另一个颜色为c的点。要求这n条圆弧互不相交。求画圆弧的方案数。n<=2e5题解:容易发现,该图最多选择的圆弧数为n,于是我们只需要求最大匹配的方案数,随便dp即可。关于环转化成链,我们只需要枚举第一个点的那种颜色选择圆弧的方法,就原创 2021-04-16 19:48:29 · 763 阅读 · 6 评论