蓝桥杯 算法提高 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,否则代码会直接判断加入新元素后的大小

相关推荐
CoovallyAIHub3 分钟前
工业质检新突破!YOLO-pdd多尺度PCB缺陷检测算法实现99%高精度
深度学习·算法·计算机视觉
gb42152874 分钟前
负载均衡算法中的加权随机算法
windows·算法·负载均衡
都叫我大帅哥25 分钟前
决策树:从零开始的机器学习“算命大师”修炼手册
python·机器学习
这里有鱼汤25 分钟前
首个支持A股的AI多智能体金融系统,来了
前端·python
云霄IT44 分钟前
python使用ffmpeg录制rtmp/m3u8推流视频并按ctrl+c实现优雅退出
python·ffmpeg·音视频
都叫我大帅哥1 小时前
我给大模型装上“记忆黄金券”:LangChain的ConversationSummaryBufferMemory全解析
python·langchain·ai编程
xdlka1 小时前
C++初学者4——标准数据类型
开发语言·c++·算法
桃子叔叔1 小时前
28天0基础前端工程师完成Flask接口编写
前端·python·flask
go54631584651 小时前
大规模矩阵构建与高级算法应用
线性代数·算法·矩阵
德育处主任1 小时前
『OpenCV-Python』配合 Matplotlib 显示图像
后端·python·opencv