前言
评价
因为第一届的缘故吧,导致这场比赛异常的简单。所以不太好评价这块。
怎么说呢? 体验有点差
- 题目难度没有区分度
- 有两题还存在SPJ判定问题,导致赛时没一人过。
题目分布,简单题占大部分,中等级占一小部分,难题数为0。
整体的评价是:
离谱 离谱 离谱
但是希望主委会能坚持下去,毕竟微信刚出来的时候,也是一片骂声。
题解
A. 手机
这题感觉是原题,而且是非常老的那种,我记见过好几回
思路:模拟 + 哈希
B. 幸运数
题目描述有点绕,但还是签到题
C. A+B problem
大数模块
其实可以取巧,python天然支持大数,java有大数类
c++需要有大数板子
出的好意外的题,只能这么评价
a, b = list(map(int, input().split()))
print (a + b)
D. 幂的末尾
因为 a b a^b ab 的a,b数据范围都很小,直接模拟也没问题
理论上该用快速幂求解
E. 赛前准备
简单构造题
只要构造 [n, k +2] + [1, k + 1] 序列即可
F. 生活大爆炸版石头剪刀布
循环节 + 模拟题
需要构建一个对局表
G. 最小乘积
分类讨论即可
- 如果存在0,那么操作数必然为0
- 如果负数个数为偶数,则最小的数必然为0,只需要把第一个数变为0即可
- 如果负数个数为奇数,则不需要任何操作,此时必然最小
H. 探险
思路:枚举 + 贪心
枚举探索到的最后一点即可,然后谈心求最大的b
m a x i = 0 i + 1 < = k ∑ j = 0 j = i a i + ( k − i − 1 ) ∗ m a x ( b 0 , b 1 , . . . , b i ) max_{i=0}^{i+1<=k} \sum_{j=0}^{j=i}a_i + (k -i-1)* max(b_0, b_1, ..., b_i) maxi=0i+1<=kj=0∑j=iai+(k−i−1)∗max(b0,b1,...,bi)
注意int溢出的问题,其他没什么了
总感觉这题蓝桥杯上见过
I. 2的幂次方表示
我写了一个DFS构造
考察了数的二进制表达吧,感觉还行,不知道别人咋写的
J. 去除没有吸引力的配对
思路: 众数贪心 + 奇偶讨论
这是一道思维题,直接秒杀了,感觉好像之前力扣周赛出过类似的
找到众数点,进行对消
- 如果众数少于等于数的一半,则奇数留下1,偶数留下0
- 如果众数大于数的一半,则为= 众数 * 2 - 数
写在最后
本来这个比赛刚出来的,其影响力较小,很多学校不认可,导致其不能加综测分。
从报名的人数来看,前期蛮惨的,不过最后好像有700多人参加,这个有点小意外。
希望这个比赛越来越有影响力。