这种题一看就是二分来做,思路也非常简单~,因为题目说了。在满足切割后的木头等于K时,尽可能切割出长一点的木头,所以我们对最长的木头来开刀,不停的二分,记录每次满足要求的结果,最后left>right 时就退出循环,AC代码如下:~

#include <iostream>
#include <algorithm>
typedef long long int ll;
int get_num(int a[],int n,int mid);
using namespace std;int main(){int N,K;cin>>N>>K;int a[N+1];for(int i=1;i<=N;i++){cin>>a[i];}int sum=0;int Max=*max_element(a+1,a+N+1);int left=1,right=Max;int res=1;while(left<=right){int mid=(left+right)/2;if(get_num(a,N,mid)>=K){res=mid;left=mid+1;}else{right=mid-1;}}if(right==0) //如果一厘米都切不了,那最后肯定是left=1,right=0退出循环{cout<<0;}else{cout<<res<<endl;}return 0;}int get_num(int a[],int n,int mid){int sum=0;for(int i=1;i<=n;i++){sum+=a[i]/mid;}return sum;}

P2440 木材加工相关推荐

  1. 洛谷 P2440 木材加工 (二分答案)

    P2440 木材加工 题意 给定N个木头及其长度,要求把这些木头切割成M块长度相同的小段木头(木头有可能有剩余),求小段木头的最大值. 比如:有两木头长度为 11 和 21, 要求切成 6 块, 那么 ...

  2. 洛谷 P2440 木材加工(二分,含边界处理的笔记)

     题目链接: 木材加工 - 洛谷https://www.luogu.com.cn/problem/P2440 非常简单的题目,用left和right控制二分边界,ans一开始是0,每次check到符合 ...

  3. [luogu p2440] 木材加工

    传送门 木材加工 题目背景 要保护环境 题目描述 木材厂有一些原木,现在想把这些木头切割成一些长度相同的小段木头(木头有可能有剩余),需要得到的小段的数目是给定的.当然,我们希望得到的小段木头越长越好 ...

  4. 洛谷——P2440 木材加工

    https://www.luogu.org/problem/show?pid=2440#sub 题目背景 要保护环境 题目描述 题目描述: 木材厂有一些原木,现在想把这些木头切割成一些长度相同的小段木 ...

  5. 二分答案——洛谷P2440木材加工

    题目描述 问题分析 这个题目是一类典型的二分答案问题,题目中给出我们需要将给定的长度切割成相应的K段,并且保证切割的小段的最大长度,那么我们怎么做呢,必然是在一定的区间枚举出来该切成多少才能满足切成k ...

  6. 北理工集训 Day1—Day2 (部分算法题目)

    目录 P1678 烦恼的高考志愿 用C++进行代码实现 P2440 木材加工 用C++进行代码实现 P5705 [深基2.例7]数字反转 代码实现 P3954 [NOIP 2017 普及组] 成绩 代 ...

  7. 辛普森悖论如何影响AB测试

    Simpson's paradox occurs when we observe a certain trend in the aggregate data but not in the underl ...

  8. 二分(二分查找,二分搜索)

    二分模板 浮点数二分 double l=0,r=x; while(r-l>1e-(k+2))//保留k位小数 {double mid=(l+r)/2;if(check(mid)){l=mid;} ...

  9. 洛谷题目AC代码总结(未完成,日更题目中)

    目录 [入门1]顺序结构 [入门2]分支结构 [入门3]循环结构 [入门4]数组 [入门5]字符串 [入门6]函数与结构体 [算法1-1]模拟与高精度 [算法1-2]排序 [算法1-3]暴力枚举 [算 ...

  10. 每日一题解(第二周)

    周二 木材加工 P2440 木材加工 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 基本思路:二分查找能够符合条件的最大长度 #include<bits/stdc++.h&g ...

最新文章

  1. Github中文项目排行榜,你永远想不到开发者都用它干了什么
  2. 国际农民丰收节贸易会-万祥军: 全球TOP10农企携手阿里
  3. C语言 | 基于MPU605(六轴传感器)的I2C实现LCD1602显示(代码类)
  4. UTF-8格式的文本文件程序读取异常
  5. KnockoutJS-快速入门
  6. 手机进水急救——爆米花可用来吸干水分
  7. Linux 程序后台运行与删除
  8. Gartner发布2021年数字商务技术成熟度曲线,重点关注四项技术
  9. datatable某一行第N列为空的时候删除某一行
  10. 是什么浪费了运维的工作时间?
  11. .php on line 0,windows启动apache提示PHP Startup: in Unknown on line 0
  12. Android 蓝牙手柄开发
  13. Win10/Win7下添加Protel 99 SE库文件
  14. 南开100题C语言(021-030)
  15. 计算机桌面ico图标,.ico格式图标制作转换教程及DIY桌面图标的方法
  16. ThunderBird 突然收不到邮件
  17. 个计算机语言使用人数排行,语言使用人数排行_世界语言使用人数排名
  18. 智能手环: 调研报告
  19. 中间件监控和告警方案
  20. 服务器trunk协议是什么,TRUNK端口汇聚技术原理和作用介绍

热门文章

  1. 每日一题《青蛙跳步》
  2. vue react 写法区别
  3. 光学中的几个物理量的意义
  4. 什么是公有云、私有云、混合云? 1
  5. 电子商务网站建设系统战略规划报告
  6. mysql+tinyint+符号_mysql中TINYINT的取值范围
  7. Emacs基础使用教程及常见命令整理
  8. Emacs学习笔记(7):简单的配置
  9. 一些提供代理服务器IP列表的链接
  10. k8s学习-网络策略NetworkPolicy(概念、模版、创建、删除等)