重做2023年国A
重做2023年国A
C切割:
- 思路:简单的模拟题,根据题意来模拟即可,可以多加测试来降低风险
DXYZ:
- 思路:找规律题目,总结公式,从样例出发,耐心一点完全可以做出来,很棒!
E第K小的和:
- 思路:双重二分,调试了一会儿边界最终做出来了!二分条件的基本原则还是要坚持(等号在哪,哪里没有加减1。然后就是考虑找最左还是最右,没有结果的时候又要返回什么),然后如果出错就debug输出也会比较容易找到问题所在,细心一点即可。最后N忘记设大一点导致一个点没过,经验+1。
F相连的边:
- 思路:图的存储和遍历。
- 三条相连的边的和最大,先分析有两种情况,一是三条边有一共同端点,二是三条边首位相连。对于一,遍历所有点,所连的边按照边长倒叙排序,取前3个(>=3)。对于二,遍历所有边,对于两个端点分别取所连的边的最长,不能是当前边,需要增加一个id变量来标记每一条边。使用了vector
node这一类型。 - 主要在于分类分析,对一种情况的边界情况要考虑清楚,是可以做出来的。
G01游戏:
- 思路:01图dfs求解。
- 有三个限定条件:一是水平或垂直,不能出现连续3个0或1,二是每行每列的0,1个数都要想到,三是每行每列各不相同(n比较小,可以用状压数组记录)。针对限定条件及时进行剪枝。从左往右,从上到下遍历,最终进行验证。dfs有0和1两个分支,注意要恢复现场。
- 出现问题去输出再加上逻辑分析基本就可以判定解决问题,可以做出来,很棒!
H子串:
- 思路:字符串hash
- 暴力枚举所有子串,先遍历len,再遍历起始位置,s.substr(i, len)来获取子串,可以过25%,不错👍
I树上的路径:
- 树上距离枚举
- 利用lca来求两点之间的距离,可以过65%,利用lca的模板求树上两点距离已经比较熟练了
总结:
1.题目分布:
- 两道填空题一般涉及比较不常用的算法知识,可以简单看一下,能不能有思路,没有的话,快速过看下面的题就可以了。
- 前三道算法题相对来说难度还可以,涉及模拟和基础算法。可以尝试去想正解,注意多加测试,相信自己是可以拿到这些分数的。
- 后四道题或者加上最后一道题,涉及图的存储和dfs可以拿部分分甚至全部分数,其他能模拟的题目也尽量去拿部分分,多想几组测试数据,稳中求胜。
2.时间:
- 在一道题目上不要停留过长的时间,不要超过30-40分钟,可以先放一放,做后面的题,之后可以再回过头来看,可能会有新思路。
- 最后一定要留40分钟以上的时间来检查所有题目,把提交的内容再拿回来测试,或是可以模拟拿分的题目再想想有没有更好的办法。最后几分钟再看一下提交的内容有没有问题。
重做2023年国A
http://example.com/2024/05/17/蓝桥杯国赛备赛/重做2023年国A/