2023牛客寒假算法基础集训营5

2023牛客寒假算法基础集训营 5#

部分题解: A B C D H K L


A#

思路 : 快排 + 前缀和 + 二分查找

先从小到大排序, 再求出排完序后的前缀和. 对于每次询问, 二分查找第一个大于 x 的数的下标 cnt, 那么区间的右边界 r=cnt1 , 再和 k 比较判断, 得到区间的左边界 l=max(0,cntk) , 那么 ans=sum[r]sum[l1]

A_2023牛客寒假算法基础集训营5 (nowcoder.com)

代码查看 (nowcoder.com)


B#

思路:

每人都选最优的拿取方法使字典序最小, 那么就是每人每次只拿一个.

因为 是先手, 所以要么 多一个, 赢; 要么一样多, 是平局.

B_2023牛客寒假算法基础集训营5 (nowcoder.com)

代码查看 (nowcoder.com)


C#

思路:

要判断每一种 p 序列情况下 a, b 的大小值, 需要分情况讨论: (改变前为A,B, 改变后为 a,b)

  • A=B, 无论 p 序列如何排列, 都会有 a=b

  • AB

    • A 的位数 = B 的位数, 这种情况下, ab 不会有恒定的 ><

    • A 的位数 > B 的位数

      输入可能会有前导零, 但即使没有前导零, p 序列也会使 AB 出现前导零. 所以要把 AB 相同的前几位去掉, 再进行判断

    • A 的位数 < B 的位数

      与上一点同理

C_2023牛客寒假算法基础集训营5 (nowcoder.com)

代码查看 (nowcoder.com)


D#

思路: 优先队列, 每次合并区间更新各自所在关卡值, 并判断输出

D_2023牛客寒假算法基础集训营5 (nowcoder.com)

代码查看 (nowcoder.com)


H#

思路: 模拟判断

H_2023牛客寒假算法基础集训营5 (nowcoder.com)

代码查看 (nowcoder.com)


K#

思路:

最优情况是每次取 x=n2+1 , 循环遍历

K_2023牛客寒假算法基础集训营5 (nowcoder.com)

代码查看 (nowcoder.com)


L#

思路:

n 开始往 1 遍历, 每次都枚举 m 条指令, 对于每条指令下达后剩余的人数下, 在剩余相同的人数下取花费的最小值

L_2023牛客寒假算法基础集训营5 (nowcoder.com)

代码查看 (nowcoder.com)

作者:Oneway

出处:https://www.cnblogs.com/oneway10101/p/17084045.html

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。

posted @   Oneway`  阅读(61)  评论(4编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话
more_horiz
keyboard_arrow_up dark_mode palette
选择主题
menu
点击右上角即可分享
微信分享提示