蓝桥杯 算法提高 ADV-1164 和谐宿舍 python AC

贪心,二分

同类型题:蓝桥杯 算法提高 ADV-1175 打包

python 复制代码
def judge(x):
    wood = 0
    max_val = 0
    ans_len = 0
    for i in ll:
        if i > x:
            return False
        elif max(max_val, i) * (ans_len + 1) <= x:
            max_val = max(max_val, i)
            ans_len += 1
        else:
            wood += 1
            max_val = i
            ans_len = 1
    if ans_len:
        wood += 1
    return wood <= m


n, m = map(int, input().split())
ll = list(map(int, input().split()))
l, r = 0, max(ll) * len(ll)
while l < r:
    mid = (l + r) // 2
    if judge(mid):
        r = mid
    else:
        l = mid + 1
print(l)

函数遍历中加入了一个剪枝,判断当单个画大于木板时直接返回false,否则代码会直接判断加入新元素后的大小

相关推荐
weixin_416667968 小时前
银河麒麟V10看门狗试验-1
网络·chrome·python
白帽攻防录8 小时前
SRC 挖洞:WSO2 JWT 算法混淆绕过深度复盘,CVE-2026-5430 不支持的算法怎么变成管理员
网络·算法·安全·网络安全·jwt
古城小栈9 小时前
Pydantic 从入门到实践全讲解
python
happylifetree9 小时前
Python18:核心语法-数据存储与运算-运算符-算术运算符
python
打工仔折腾 AI9 小时前
从Attention到BERT:双向预训练语言模型到底解决了什么问题
人工智能·后端·python·深度学习·语言模型·bert
小O的算法实验室9 小时前
IEEE TEVC,基于精确与DQN群智能调度方法用于多目标异构USV
算法
迅猛龙办公室9 小时前
实现第一个python程序(HelloWorld)
开发语言·python
拉格朗日(Lagrange)9 小时前
【第2 章】WorkBuddy 从入门到高手
开发语言·python
可乐ea9 小时前
AI Agent 工具调用准确性评测:选择错误与参数错误分开测
大数据·人工智能·算法·大模型·工具调用·ai智能体·agent评测
上位机妹子10 小时前
C 语言 数组删除指定元素(快慢指针法)
c语言·数据结构·算法