我参加了第十七届蓝桥杯 Java B 组省赛,这套题你能撑到第几题?
一、蓝桥杯到底是什么?
简单来说:
蓝桥杯是国内大学生中含金量很高的程序设计竞赛之一。
它的特点很明确:
分为省赛、国赛两轮 分组清晰(A组 / B组) 题型包括结果填空和程序设计 比赛时间为 4 小时 采用在线评测系统提交答案
它不像 ACM 那样极限,但也绝对不简单。
对于大多数普通本科生来说:
蓝桥杯是最容易入门,同时也最容易拉开差距的比赛。
二、今年这套题,真的不简单
这次 Java B 组,一共 8 道题:
A、B:填空题(各 5 分) C、D:基础算法题(各 10 分) E、F:中等难度(各 15 分) G、H:压轴题(各 20 分)
整体结构非常典型,但难度分层明显。
三、题目盘点(精简版)
A题:和平干饭日
有 26 只猫。
第 n 天的粮食数量是把 1 到 n 拼接成一个整数,例如:
第 1 天:1 第 2 天:12 第 3 天:123
问题是:在前 2026 天中,有多少天的粮食总数能被 26 整除。
这题的核心在于大整数构造和取模规律。
B题:干涉条纹
给定两个范围:
a ∈ [0, A] b ∈ [0, B]
要求满足 a + b 是完全平方数。
问有多少种不同组合(结果对 998244353 取模)。
本质是枚举平方数,然后统计区间内的合法组合数量。
C题:游戏指令解析器
给定一组完整指令,再输入若干字符串。
规则如下:
如果只匹配一个指令前缀,输出该指令 如果匹配多个,输出 ambiguous 如果一个都匹配不到,输出 unknown
这是一道典型的字符串前缀匹配问题,可以用 Trie(字典树)解决。
D题:量子态叠加计数器
给定多个 0/1 序列。
统计所有区间中,恰好包含 K 个 1 的区间数量。
这是一个经典问题,可以用前缀和 + 哈希优化解决。
E题:共享单车
给定 n 辆车和 m 个停车点。
每辆车移动到某个停车点的代价是两点距离的绝对值。
每个停车点最多停一辆车。
要求最小总移动成本。
这题的关键是排序之后进行贪心匹配。
F题:擂台赛
每个选手都有一个目标擂台。
按顺序出战,会关闭原擂台。
目标是让最终被使用的擂台数量最少。
本质是图结构问题,类似基环树,需要设计合理的出战顺序。
G题:星座导航校准器
选择若干卫星组成集合,需要满足:
整体连通 至少选择 K 个
目标是最大化一个复杂函数:
总信号强度 + 几何加成 - 干扰惩罚
这题是典型的搜索 + 剪枝 + 图论综合题,属于压轴难度。
H题:回程
从节点 n 到节点 1。
可以使用最多 3 次特殊机会,让某条边的代价变为 1。
求最小路径代价。
这题本质是分层图 + 最短路径(Dijkstra)问题。
四、这套题的真实难度
这套题的分层非常清晰:
前两题基本是送分题
中间两题考察基础算法
E、F 开始拉开差距
G、H 是真正的分水岭
可以这样理解:
更多推荐
所有评论(0)