2024年十五届蓝桥杯研究生组
今年的题较去年难度降低了很多,题量也少了2道。
Q1 劲舞团
读文件,找到最长的满足条件的子数组的长度
答案是:9
BufferedReader,fopen,open
Q2 召唤数学精灵
找规律,周期是100,对给的数据,除以100,最后再加2,因为还有2个没算。
答案是:40480826628086
Q3 封闭图形个数
签到题
自定义排序规则 + 模拟
把每个数字的封闭图像个数先用数组存储起来,比如cnt[8] = 2
Java定义一个类型Node,创建数组,sort指定排序规则
C++,创建结构体,传入排序规则函数cmp
Q4 商品处理
差分+前缀和 10分
差分统计所有操作后的最终情况,此外维护一个数组,用来存储最终结果是个数是1的数,再进行请前缀和,最后只需要O(1)查询[l,r]中1的个数
Q5 砍柴
题意:两人按照最优策略轮流操作一个数字x ,每次操作可以选择一个小于等于 的质数 ,并将 x变为x-p ,问最终谁先手必胜。共有T次询问。X是 1e5,T是1e4
博弈论,推出一种必败就是必胜,应该是sg函数
预处理1e5的质数
预处理1e5的sg函数:N * N * (ln n)
最后O(1)查询
暴力枚举的代码 15*0.2 = 3分
这个解法可能不能全部通过,但是大部分数据能过
1~x 中满足小于等于X的质数的个数:
x/ln x
Q6 回文串
是否能加上一些lqb使得变成一个回文串 就像个模拟贪心 15分
Q7 最大异或点
求最大异或值的2个不相邻点 。
字典树处理所有节点,Trie维护所有值,枚举到每个节点,就把相邻的从字典树删除,进行查询,最后再加上
Q8 植物生命力
求所有子树中 ,满足整除关系的父子节点对的个数。条件是:父节点比子节点大,并且不能被子节点整除。
每个节点的值都是唯一的,值域是1~1e5,这应该是突破口
暴力20*0.3=6分