2025蓝桥杯软件赛时间
2025年4月12日9:00-13:00
今天这篇写给大学B组、目前做题数<200的,还想抢救一下的朋友们。
昨天写了一篇:
介绍了几个抢救方法,细节请回看这篇:
(1)学Python,应付填空题的字符串、日期、大数题型。
(2)做杂题,例如模拟、暴力、枚举等。
(3)大量做题,每天5题。
(4)锻炼编码速度。
大学B组是蓝桥杯的绝对主力
下表是2024年蓝桥杯软件赛国赛的获奖统计,B组人数占73%。
B组省赛参赛人数应该超过10万人。
暴力尝试2024年C/C++大学B组题
题目在这里,看后面分析之前,先自己做做:
(悄悄告诉你,即使你什么编程都不会,也不会爆零蛋。因为有一道啰嗦题明晃晃地说:”只要输出-1就能得1.5分”。输出-1你总会吧?2024年只有C/C++大学A、B组有这个待遇。)
试题A:握手问题
https://www.lanqiao.cn/problems/19695/learning/
试题B:小球反弹
https://www.lanqiao.cn/problems/19732/learning
试题C:好数
https://www.lanqiao.cn/problems/19709/learning/
试题D: R格式
https://www.lanqiao.cn/problems/19710/learning/
试题E:宝石组合
https://www.lanqiao.cn/problems/19711/learning/
试题F:数字接龙
https://www.lanqiao.cn/problems/19712/learning/
试题H:拔河
https://www.lanqiao.cn/problems/19713/learning/
2024年C/C++大学B组的8题,在算法知识点和难度上比A组简单很多。
试试只用暴力、枚举、模拟做,有34分!不光省三等奖,估计有二等奖。
题号 |
分数 |
题目 |
100%做法 |
简单做法 |
我的分数 |
A |
5 |
握手问题 |
简单数学 |
5 |
|
B |
5 |
小球反弹 |
简单数学 |
5 |
|
C |
10 |
好数 |
枚举 |
10 |
|
D |
10 |
R格式 |
高精度 |
10 |
|
E |
15 |
宝石组合 |
GCD、LCM、质因数分解、 |
0 |
|
F |
15 |
数字接龙 |
DFS+剪枝 |
0 |
|
G |
20 |
爬山 |
|||
H |
20 |
拔河 |
前缀和、双指针 |
20%枚举 |
4 |
试题A:握手问题
https://www.lanqiao.cn/problems/19695/learning/
送分题,没有任何难度!我也能一次通过!
试题 B: 小球反弹
https://www.lanqiao.cn/problems/19732/learning
小学奥数题,但有点费脑筋。诀窍就是:去掉竖墙,把第1个长方形向右延伸无数个同样的长方形,这样就只需要在上下反射了。到第k个长方形(k应该是偶数,才能按题目的意思回到左上角),正好第一次到右上角,就结束了。
这题做对也不容易,感觉比不过小学生。
试题 C: 好数
https://www.lanqiao.cn/problems/19709/learning/
简单枚举。这是送分题,因为N最大等于10^7,数量并不多,逐一检查每个数就好了。
试题 D: R 格式
https://www.lanqiao.cn/problems/19710/learning/
高精度。没想到真的考了一次高精度,高精度就是数组的应用,属于那种做起来很无聊但是又费时间的事情。
50%的不用高精度,完全送分:
100%必须要用高精度了。题目说是乘法,其实可以用加法,因为自己加自己,就是乘2;做n次自己加自己,就是乘以2^n。加法总比乘法简单点。
试题 E: 宝石组合
https://www.lanqiao.cn/problems/19711/learning/
GCD、LCM学过吗?质因数分解学过吗?如果学过,再经过推导,得到S=GCD(Ha,Hb,Hc),这个推导有点麻烦。
然后求最大的GCD(Ha,Hb,Hc),而且这3个数是字典序最小的。字典序好处理,把所有的数从小到大排序,就是字典序的。
如何求最大的GCD(Ha,Hb,Hc)?简单的做法是枚举三个数的GCD,可以通过30%的测试。100%的正解是反过来做,用一个数组Y[]存因子。一个数H如果有因子k,就Y[k]++。处理完所有的H,最后,Y[i]的值是因子为i的H的个数,Y[i]>=3说明多于3个数,符合要求。
总体来说,本题比较麻烦,不在可抢救的题之列。
试题 F: 数字接龙
https://www.lanqiao.cn/problems/19712/learning/
这就是那道啰嗦题,“输出-1给1.5分”。由于题目又臭又长,如果是我就直接输出-1然后走人。
但是看到“80%的评测N≤5”,似乎很容易,看看能不能抢救。仔细读题后,发现这是一道暴力搜所有路径的题目,除了用DFS+剪枝,没有其他方法。只能放弃了。
试题 G: 爬山
本题蓝桥题库没有收录,洛谷收录了但是不让提交,不知是何原因。只能放弃。
试题 H: 拔河
https://www.lanqiao.cn/problems/19713/learning/
终于又能抢救了。暴力枚举两支队伍,每支队伍需要枚举左右2个端点,一共有4个端点,所以需要做4个for循环。除了这4个for循环,还需要一个循环用于计算队伍力量之和。计算量非常大。勉强通过20%。
100%得分其实也没用到复杂算法,用前缀和优化区间和计算、用双指针确定差距小的区间。