15届赛制改革了,改成了8道题。而且考数学思维更多,并没有像往届比赛一样考太多的算法,而是考的都是很基础的算法
握手问题不用多说,简单的排列组合。小球反弹只能说想到的肯定能做出来,但是不是很好想吧,我第一次做的时候打算完全模拟,但是找不到思路,然后第二次做的时候,在反弹时改变方向的距离计算的时候做了延长,后面也就想到了直接延长矩形来做,但最后没有想到要返回的条件,还是没做出来。感觉这个题还是有难度的
好数,这个题最容易想到的就是直接枚举,但是1e7可能会超时,我们可以算一下时间复杂度。时间复杂度和时间的对应关系大约为 1s为1e9,大致算一下不会超时。(空间复杂度好像是1e5对应256m)这个题也可以用排列组合来做,但是一定要注意在枚举数字时那个范围,不要超限制数(当你考虑排列组合的时候就明白大致什么意思)
高精度的难点在于对于练得少的可能比较复杂,第一遍死活debug不出来,但是第二遍自己做出来了。还有就是计算过程的简化,比如这个题中2的n次方,不要直接算出来,而是乘n个2,这样会简单一些。
这个题首先你得能化简出来,我是知道lcm和gcd的,但是我还是没化出来。后面不是枚举宝石而是枚举s,这个我也没想到,枚举优化一般都会比较出乎意料吧。就像是那个灯泡的问题,完全没想到是枚举第一行的状态。
搜索是省赛的必考题目,之前10道题甚至会考两道。这个题有个坑就是在对角线判断的时候,我第一次做的时候是只想到了通过判断另一条对角线的点是否已经被访问过来判断是否存在线路交叉,但是只能过75的样例。正确的思路应该是存储边来判断,因为它可能是转着圈把那两个点访问了,不是直接对角线走的
前缀和在省赛里考的频率还是蛮高的。前缀和有关键词:“连续”。同时要注意两个队伍的下标范围,表明了并不一定把人都选完,也不一定都有人。另外可能会顾虑重复的情况,但是因为求的是差值,重复就相当于把重复的去掉不选。
一个枚举一个二分。二分直接套模板。枚举可以优化一下,给出的数组先找出2023,直接枚举月和日。
我看题解很多都是用二分做的啊,我感觉这个题贪心更好想一些,但要注意除的时候是向下取整最后要加1。(就算是整除,因为不能取到,也要加1)
两个搜索题。dfs的飞机降落和bfs的岛屿个数。飞机降落就是普通的dfs回溯问题,注意在使用dfs之前一定要看数据范围,一般都是小于等于10的可以用。岛屿个数子岛屿判断我看题目是没看明白是什么意思,但是一定要结合样例理解题意,在样例二中有3个岛屿,说明只要是沿着海洋能走到边界就不是子岛屿。
结合接龙数组自身的性质吧,要是我遇到我直接给了,想不出来....
使用前缀和优化枚举,枚举右边界。
一开始是没有想到用链表的,但是数据的范围又很大,只能是预处理得到左右相邻元素,自然而然就想到了数组模拟链表。优先队列自定义实现最小堆一定要会。
最小公共祖先。景区旅游是模板题,但是在最后得出答案的时候一定要预处理优化为o(n),不然会不会lca都一样只能30。砍树不会....(感觉今年会延续去年可能考数学思维和基础算法,难的可能到国赛了)
进制转换更是简单的没边。顺子日期没有判断重复多了1,大家在明天考试时一定要注意一些细节。
看数据范围1e18,不能直接模拟,要先算出整数周再进行模拟
啥时候长的最高,第二次修剪的时候最高
还是要结合例子理解题意,单看题连那个65都不明白咋来的。后面就是按照进制转换进行模拟,还是挺复杂的。
注意开辟数组要多开一圈。在枚举矩阵边界的时候,还用到了滑动窗口优化。
这个简直是大boss,我也刷了50多道了,至今还是个雏....积木画和李白打酒都是通过递归去想的,李白打酒可以记忆化搜索,算是比较简单的动态规划了。
简单的演都不演了
砍竹子没看
这样看下来,枚举和搜索是一定会考的,枚举可能10+一道填空5,搜索20,再做大半道就能省一了,不知道明天能做到哪一步.....