以下仅是我的答案,仅供参考,欢迎讨论。
A:穿越时空之门
二进制、四进制转换。答案:63。
B:数字串个数
排除0,总的方案数9^10000,减去不存在3和不存在7的2*8^10000,再加上同时不存在3和7的7^10000。答案:157509472。
C:连连看
n的范围是1000,所以根据得到a-b=c-d或a+b=c+d。然后预处理每个数在那个集合中,最后枚举每个数,时间复杂度n^2。
D:神奇闹钟
大模拟,一般样例正确就能AC。
有同学说用 import time 会溢出,特意查了相关资料
https://stackoverflow.com/questions/46133223/maximum-value-of-timestamp
详情可以看上文链接,确实存在溢出风险,这题应该在考察大模拟。
E:蓝桥村的真相
这题我是打表找了以下规律,但不一定正确。只存在全部说谎和刚好3的整数倍时,每三个人有一个人说谎。
F:魔法巡游
这题直接贪心是错的,因为会存在舍弃前面一个可以取到更好的结果,所以我是用的DP,从最后开始往前遍历,每次去可以得到每行最大值。
G:缴纳过路费
这题看到数据范围,一下子就想到的并查集,将有道路的且符合规则的城市放到同一个集合里,最后遍历每个集合,该集合答案数就是 n*(n - 1) (n表示该集合中城市数量)。
H:纯职业小组
贪心,排序按%3后余数大小从大到小排序,每次取完之后还可以再取两个数。
结束,两个半小时下班,交卷走人,因为在机房电脑考的没有保存代码。