Loading

第七周训练总结

比赛总结

牛客多校第七场 1/2/13

AC:M
补题:C

总结:

开题445,各自读题,wyf读完M后发现是签到题,开始写M。第一发int溢出wa了,后来改longlong通过。然后榜上C和I题过的较多,先集中想的I题,很快出了一个思路,但是在构思如何实现的时候发现思路是错误的,觉得I题的求解比较麻烦,放掉。然后三个人开始想C题,开始的时候比较顺利,但注意力都放在了b的前缀异或和上。由于样例不好构造,所以手码了几个比较小的数据,对思路造成了误导,有很多的细节需要处理和特判。在写代码的时候也比较混乱,最终没有通过。整体比较坐牢,对于数学类的规律题缺乏练习,思路比较混乱。

题解

  • M:签到题,找出规律,作差求解即可。
  • C:通过bi的最高位1来确定ai对应位,判断是否会出现矛盾,最终通过前缀异或和求出全部的数。

牛客多校第八场 3/5/12

AC:A G K
补题:H

总结

开题依然是444,各自读题。很快cs发现A题就是一个简单的签到题,很快就将代码敲了出来,但是因为马虎,少输出一个变量导致wa了一发,发现之后马上改了,然后就A了。接着就开始读了H题,3个人都感觉可以做,但是思前想后还是没有很多想法,想了一会儿,就提出再开J题,是一个关于质数的构造题目,一开始没有什么思路,后来cs突然发现了一个特别有趣的想法,接着就按照思路将代码敲出来了,试了几个样例,发现没什么问题就交了上去,结果wa了,但是当时知道这个思路是没有错的,就又多试了几组样例,发现了问题所在,加了一行代码之后,经过测试没有问题就交了上去,然后就A了。然后cs就接着思考H题,ska和wyf开始开K题,经过讨论之后发现了K题的一点小思路,然后一边敲代码,一边完善思路,因为细节没有处理好,导致wa了一发,然后经过仔细检查之后,将错误改正了,然后就A了。
这场比赛整场来说还算可以,不过都是因为没有关注细节,导致wa了几发,这就要求我们之后再做题的时候应该更加谨慎细心。

题解

  • A:只需要用map来解决即可。
  • G:因为要求相邻两个数的和或差为奇质数,所以就考虑搁4个数交换,然后剩下的模8的余数再考虑即可。
  • K:首先考虑 \(2 * 2\) 这种最简单的情况;再考虑 \({n * m(n \ge 3 且 m \ge 3)}\) 这种必是一步就赢的情况;再考虑 \({2 * m (m > 2)}\)\({n * 2(n > 2)}\) 这两种情况即可。
  • H:这道题做出来需要的技巧比较强,考试时已经往这个方面想了,但是代码不太会写,并且具体细节还是不太会处理;整体上利用a[i]可以和后面的a[i]+1进行匹配维护持续性,从后向前遍历数组,使用栈去维护

杭电多校第七场 4/4/12

AC:1002、1004、1011、1013
补题:

总结

开题445,各自读题。首先跟榜,发现11题出现过题现象,就先把11题读了,三个人一起想11,很快出了思路。ska写代码,很快就过了。期间cs和wyf想2题,cs跟wyf讲了题意,但wyf题意理解错误,码代码交了两发wa了。然后发现题意理解错了,之后cs又根据自己思路写代码过题。然后三个人一起想13题,刚开始很快出了最小值的解法,但是最大值的思路推测出了错误,导致wa了一发。经过思考觉得倒数第二位需要讨论一下,交后又wa。再次加上特判又wa。最后发现高位可以进行补1,修改之后终于通过。再之后三个人一起想4题,因为其他的题目通过数量太少,所以两次都是三个人集中想一个题。第四题的思路出的比较坎坷,都是一点一点出,用的时间很长。刚开始就盲猜了一发wa了,然后推出了结论之后,ska码完代码提交,wa了,因为在奇数的情况下公式写错了,而我们测试的样例刚好检查不出来这种错误。修改之后终于通过。
整体全场都在想题和写题,比较充实。在一个人码代码的时候另外两个人应该多想几组样例,因为题目给的样例十分简单,过了相当于没过。确保无误后再进行提交。

题解

  • 1002:思维,通过简单的手写可以发现答案只能是0,1,499122177,可以证明任何一堆大于1的石子在所有数目等概率被取走情况下,先手后手胜的概率均为50%
  • 1004:二分构造,二分某个nitness可以构造出最长多长的序列的答案
  • 1011:签到题,直接贪心模拟
  • 1013:思维数学,比较难判断的是最大值,因为易知处第二位外,任何位都可以通过操作变成1,而第二位是1或者0关键在于逆序对数

杭电多校第八场 3/3/11

AC:1005、1007、1010
补题:

总结

这场比赛题目的难度跨度比较大,能做出来的比较好做,剩下的没有努力的空间,其中1010我们三个人都朝着数学题的方向讨论,但是忽略了 \(\sqrt{n}\) 的暴力做法,这也是打了很多场之后,感觉所有题都是思维或者结论题,忽略了最有效的暴力枚举,下次做题之前都要先从最简单的算法开始考虑。从简单题来看,还是wa的比较多,一开始冲榜冲的不能比较靠前,导致整体排名总是不理想,简单题还是要花几分钟整体看一下,想几个样例;难题的话,这场wyf尝试用tire树+fail树+AC自动机写了一下,结果会爆空间,看了题解发现是Z-函数,因此对于比较进阶的算法还是需要我们继续巩固,在练习中多加使用。

题解

  • 1005:模拟,从两边贪心模拟
  • 1007:签到,并查集
  • 1010:暴力,直接暴力枚举,最多三步可以到达目的,时间复杂度 \(O(\sqrt{n})\)

课程总结

本周讲了字符串和分治。由于分治的难度比较高并且讲的时间比较靠后,大部分内容没能理解。字符串对应的trie树,ac自动机,后缀数组和扩展kmp都进行了相应的训练,整理了相应的模板。比较难的后缀自动机和后缀树还在理解和学习中。

自由学习情况

石珂安

主要是找了一些题做,
pPuG7kt.png
pPuGHtP.png
pPuGoTI.png

王永峰

本周还是继续字符串的学习,对扩展kmp(z函数),后缀数组,后缀自动机进行学习和巩固。整理了相应的模板,后缀自动机还在学习中,感觉理解起来比较困难,正在缓慢推进中。还有就是刷了洛谷上一堆简单的数学题,积累一些比较基础的数学性质。打了场cf和洛谷赛。
pPuYKbj.png
pPuYurQ.png
pPuYnKg.png

陈市

主要是进行了字符串的一些学习,和一些题目的练习,还有就是一些基础的补充。
pPu8156.png

团队模板等材料整理情况

所有的模板、材料都在 github仓库,commit记录都可以看到

整体总结

本周学习情况

本周多校补题没有之前多,原因是会做的基本在考试中已经做出来了,整体来看这周的多校情况还是有所进步的,没做出来的题目都是特别难,有我们不太会的算法或者技巧的,在补题中,也能感受到我们距离下一阶段有不小的差距,这也督促我们多去学习新算法。

下周学习目标

从这周的整体情况来看,我们都渐渐进入了状态,有一些思维题也可以在考试时间做出来了,因此之后的目标就是在保持状态的情况下,在自由训练时间多去学习一些新的、进阶的算法,并多做题巩固。

posted @ 2023-08-12 19:19  marti88414  阅读(36)  评论(0编辑  收藏  举报