C++课后习题训练记录Day157

1.练习项目 :

问题描述

给定 n 根木棒,第 i 根木棒的长度为 Li​。每次你可以选择任意一根木棒并将其切成两段,切完后两段的长度都必须为整数。请问,如果一共切 m 次,在所有的方案中,切完后木棒中最长的一根最短是多少?

输入格式

输入的第一行包含两个整数 n,m,用一个空格分隔。第二行包含 n 个正整数 L1,L2,...,Ln​,依次表示每根木棍的长度。

输出格式

输出一行包含一个整数表示答案。

2.选择课程

在蓝桥云课中选择题库,选择题号20136并开始练习。

3.开始练习

(1)源码 :

#include<bits/stdc++.h>

using namespace std;

typedef long long ll;

const int N=3e5+10;

ll aN;

int n,m;

bool check(int mid)

{

ll res=0;

for(int i=1;i<=n;i++){

res=res+ai/mid+(ai%mid==0?0:1)-1;

}

return res<=m;

}

int main()

{

ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);

cin>>n>>m;

for(int i=1;i<=n;i++){

cin>>ai;

}

ll l=1,r=2e18;

while(l<=r){

ll mid=(l+r)/2;

if(check(mid))r=mid-1;

else l=mid+1;

}

cout<<l<<'\n';

return 0;

}

(2)检验结果

对此代码进行检验,检验后无报错,提交此代码,判题结果为正确100分。

(3)练习心得:注意每段代码末尾的分号是否存在,如不存在则需即使补充;输入法 是否切换 为英语模式;语法是否错误。

相关推荐
cu14322 分钟前
细谈IT6653的具体功能与其应用
c语言·c++·单片机·嵌入式硬件
迪康Defender24 分钟前
PHP 高危漏洞应急分析:从风险原理到端点侧纵深防护
运维·开发语言·安全·自动化·php·运维开发·远程工作
2601_9669496530 分钟前
为什么不应该把 QuantDash API Key 直接写进公开代码仓库?从 Git 提交历史理解凭证泄露风险
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
智_永无止境32 分钟前
又找到一个纯Java的OCR项目,识别的格式还挺多
java·开发语言·ocr
小灰灰搞电子34 分钟前
Rust+Slint 实现动态流光边框源码分享
开发语言·前端·rust·流光边框
包小黑1 小时前
Python 转 EXE (实用工具)
开发语言·python
夏虫不可与之言冰1 小时前
RMT 与 WS2812 灯带:可寻址 RGB 全彩控制
c语言·c++·单片机·物联网·visual studio
起个名字都难啊1 小时前
visual studio C/C++空项目修改为CUDA c++
c++·windows·visual studio
我命由我123451 小时前
6-3.Python 异常处理 - 异常处理进阶(else 块与 finally 块、异常传递、自定义异常)
开发语言·前端·数据库·后端·python·学习·java-ee
额额额对了1 小时前
【项目实战】从IMX6ULL环境监测到N647 AI视觉加速
linux·开发语言·嵌入式硬件