题解 | #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]最大值即可,唯一需要注意的就是不要出界。

代码链接

题解专栏 文章被收录于专栏

希望不断进步

全部评论

相关推荐

牛客868257804号:九个中铁八个中建
点赞 评论 收藏
分享
kyw_:接好运
点赞 评论 收藏
分享
评论
3
收藏
分享
牛客网
牛客企业服务