题解 | #2021哈理工新生赛#
【没有K、L,还是太弱了QAQ】
【T1 考试周破防】 特判周五即可
【T2 咖啡店】 优先花5元,若5元足够,用1元凑零;若不够,剩下的都用1元
【T3 取石子】
题目考点:博弈论基础
题目分析:1、若只有1、2、3个石子,先手必赢;
2、若有4个,先手必输;
3、若有5、6、7个,先手可让状态变成4个,则后手面对4个石子的局面必输;
4、若有8个,先手会让后手面对第三种情况,则自己必输;后面以此类推;
总结:若有((3+1)*n)个石子,先手必输;
【T4 分桃子】 若n存在一个倍数在[L, R]区间内,就可以得到(n-1)个桃子,否则得到 ( R-N )个,其中N是小于L的n的最大倍数。(N的计算方法为 n*(R/n) , 当然有其他想法,不再列举)
【T5 2的拆分】 枚举i从30到1即可,每次比较n和2的i次方,若n大,用n减去2的i次方;最后当前数字不为0的话就无解。
【T6 构造字符串】
题目考点:双指针
题目分析:主要判断两边相等的情况,每次判断输出左指针还是右指针即可:若两边不同,输出字典序小的;若相同则继续往中间找( 此过程不能移动两边指针的位置 ),直到遇到不同字符再判断输出哪一个;
【T7 信号之旅】 求两点之间曼哈顿距离,若两点在同一直线上,则判断障碍是否在两信号中间即可。
【T8 小球滚动】
题目考点:思维题目
题目分析:当两小球碰撞后,不需要理解成二者调头,我们完全可以理解为两个碰撞的小球可以互相穿透,毕竟小球之间没有区别,只要其中一个还在滑槽中,就一直在计时。这样一来:
最短时间 = 每个小球距两端的最近距离最大值
最长时间 = 每个小球距两端的最远距离最大值
【T9 看球赛】 比分持平的条件是:上一次记录的落后者的比分,在本场的比分大于等于比上一场领先者的比分,一直维护ans即可。开晚了有点慌,痛失一题。
【T10 跳一跳】 题目中说“最远到达”,则只需要维护i+a[i]最大值即可,唯一需要注意的就是不要出界。
题解专栏 文章被收录于专栏
希望不断进步