蓝桥杯真题(更新至2023年) - 编程题库 - C语言网 (dotcpp.com)
AB不想手打数据,等有真题了再说吧。
C冶炼金属
思路:这题我写了几个数,发现就是取一堆数据的最小值的最大值,和最大值的最小值(人话:公共部分)。看样例的解释,凑出的通式。
#include
#include
#include
#include
#include
二分:
#define _CRT_SECURE_NO_WARNINGS 1
#include
#include
#include
#include
#include
D飞机降落
思路:看注释即可
#include
#include
#include
#include
#include
E: 接龙数列
思路:在注释里
#include
#include
#include
#include
#include
F 岛屿个数
思路:一开始我想错了,把子岛也求了。这题两遍搜索就能做,我习惯深搜。第一遍把岛屿外面的0全改成2(8方搜索),然后把里面的0改成1,第二for循环搜索遍历岛屿(四方搜索),看看有几个。
为什么第一遍8方,第二遍四方呢。首先我们要知道只有有公共边才算同一个岛屿,举个例子:
0 2 1 0 0 1 1 0
0 1 3 0 0 1 0 0
图一 图二
假设一下,岛屿外是海,岛屿内是河。图中是有两个岛的,图1的3点是海,2点也是,2点8方可以搜到3,他们也算是联通的;同理,图二只有一个岛。
#include
#include
#include
#include
#include
G子串个数
思路:找到所有头l和尾r出现的位置,然后存起来。利用r[j] >= l[i] + k - 1这一关系,找出每一个头的总数,加和即可。
#include
#include
#include
#include
#include