2020CCPC- 网络选拔赛总结
因为半年内很久没有练习,刚开始脑子宕机了十分钟之后才开始做题。
13minA了1010,28minA了1003,42minA了1007,109minA了1011,之后没有过任何一道题。
比赛过程中时间分配有问题,一直在1005上面钻牛角尖,题没搞明白也没做出来,浪费了很多时间。
1010 Reports
题意:给定长度为n的01串,如果存在相邻两位一样就输出NO,否则输出YES。
签到题按照题意写,注意输出大写字母即可
1003 Express Mail Taking
题意:给定n个数,每个数代表放快递的柜子地址,给定一个k为操作柜的地址(地址大于等1,操作柜里不会放快递),除了操作柜,其他子是上锁的,刚开始在地址1,每次只能用操作柜打开一个柜子,问拿完所有快递再回到地址1的最短路程
除最后一个需要开的柜子外,其他柜子都需要在操作柜和快递柜之间往返,因此只需要特殊判断最后一个需要开的柜子。
当我们拿完所有快递后,需要直返回地址1,因此最后一个需要开的柜子越靠近地址1越好。
对n个快递柜从小到大排序后,如果第一个数小于k,那么可以直接忽略掉,因为可以在最后回去的路上顺便取了。如果不小于k,则不能忽略。
对于剩下的快递柜,距离是2*abs(ai-k)。
再加上出发和结束的2*(k-1),就是答案。
1007 CCPC Training Class
题意:给定一个字符串,定义一个Lborderi为“s最长的不为s的前缀使得该前缀是s的后缀”,D(i)=D(Lborderi)+1,D(0)=0,求W=max(D(i)),i为从0到n
刚开始没看懂题意,但是根据样例猜测是出现最多的字母个数。
1011 3x3 Convolution
题意:给出n*n矩阵A和3*3矩阵K(n>=3), 定义n*n矩阵C(A,K),它的每一项Cx,y满足
定义Cm(A,K)=C(Cm−1(A,K),K) and C1(A,K)=C(A,K),求limt→∞Ct(A,K)。
求C矩阵的极限,通过样例分析只有全为0和原矩阵两种情况
只有在K1,1!=0,K其他位都为0的情况下,答案为原矩阵,否则在每次运算中C矩阵都在变小,最后收敛在0
1005 Lunch
题意:给定n个数,两个人对这些数操作,每次操作将数字整分为k组,使得k组相乘等于原本的数字,最后一个把所有数字变成1的人失败
比赛的时候读错题意了,一直解不出来
本质是一个nim博弈,对于一个数,分成偶数个会增加偶数个操作,对的胜负情况没有做出改变
分成奇数个则会使胜负情况改变。
因此f(k)为k的奇质因数个数,如果k为偶数还要加1。
只要异或值为0,先手输,不为0后手输。
这次比赛主要是看错题意+中间卡住,认真读题是关键。
还有就是考试周没有进行练习,手生导致的错误。
以后需要多打cf提高读题能力。