描述

一只木桶能盛多少水,并不取决于桶壁上最高的那块木板,而恰恰取决于桶壁上最短的那块。

已知一个木桶的桶壁由N块木板组成,第i块木板的长度为Ai。

现在小Hi有一个快捷修补工具,每次可以使用修补工具将连续的不超过L块木板提高至任意高度。

已知修补工具一共可以使用M次(M*L<N),如何修补才能使最短的那块木板最高呢?

注意:

木板是环形排列的,第N-1块、第N块和第1块也被视为连续的。

输入

第1行:3个正整数,N, M, L。分别表示木板数量,修补工具使用次数,修补工具每次可以同时修补的木板数。 1≤N≤1,0001≤L≤20M*L<N

第2行:N个正整数,依次表示每一块木板的高度Ai,1≤Ai≤100,000,000

输出

第1行:1个整数。表示使用修补工具后,最短木块的所能达到的最高高度

样例说明

第一个修补工具覆盖[2 3 4]

第二个修补工具覆盖[5 8 1]

样例输入

8 2 3
8 1 9 2 3 4 7 5

样例输出

7
  • 二分查找最长木板;二分的上界为所有木板中的最长木板,下界为所有木板中的最断木板。(题意表明M * L < N)。
  • 然后检查修补次数是否小于要求的修补次数;枚举修补的起点;
#include<bits/stdc++.h>
using namespace std;int n, m, l;
bool chick(int mid, vector<int> &vec)
{for(int i=0; i<n; ++ i){int res = 0;for(int j=i; j<i+n; ++ j){if(res > m)break;if(vec[j] < mid){j += l-1;res ++;}}if(res <= m)return true;}return false;
}int main()
{ios::sync_with_stdio(false);cin >> n >> m >> l;vector<int> vec(2*n);int mx = INT_MIN, mn = INT_MAX;for(int i=0; i<n; ++ i){cin >> vec[i];vec[i+n] = vec[i];mx = max(vec[i], mx);mn = min(vec[i], mn);}while(mn < mx){int mid = mn + ((mx - mn + 1)>>1);if(chick(mid, vec))mn = mid;elsemx = mid-1;}cout << mn << endl;return 0;
}

转载于:https://www.cnblogs.com/aiterator/p/6673631.html

hihoCoder 1362 修补木桶相关推荐

  1. hihocoder #1362 : 修补木桶(二分+dp)

    时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 一只木桶能盛多少水,并不取决于桶壁上最高的那块木板,而恰恰取决于桶壁上最短的那块. 已知一个木桶的桶壁由N块木板组成,第i ...

  2. hiho 修补木桶(二分)

    题目1 : 修补木桶 时间限制: 10000ms 单点时限: 1000ms 内存限制: 256MB

  3. hihocoder 修补木桶

    思路: 二分高度 H 判断是否能够在M次内完成. 判断的方法为:因为桶是环形,所以要枚举起点. 然后 如果碰到一个为 小于H的木板 次数+1 , 跳到 i + L -1 处继续修补 #include& ...

  4. 改变世界前,先改变自己

    Part1 素养:改变世界前先改变自己 跳蚤效应:心有多大,舞台有多大 态度决定高度,人生不设限 可以输给别人,不能输给自己 你的能量超乎你想象 唤醒潜能,拆掉思维的墙 舍恩定理:成功垂青自信的人 自 ...

  5. 蝴蝶效应 青蛙现象 鳄鱼法则 马太效应 木桶理论 二八定律(巴莱多定律) 破窗理论 羊群效应

    1.蝴蝶效应:上个世纪70年代,美国一个名叫洛伦兹的气象学家在解释空气系统理论时说,亚马逊雨林一只蝴蝶翅膀偶尔振动,也许两周后就会引起美国得克萨斯州的一场龙卷风. 蝴蝶效应是说,初始条件十分微小的变化 ...

  6. 蝴蝶效应,青蛙现象,鳄鱼法则,鲇鱼效应,羊群效应,刺猬法则,手表定律,破窗理论,二八定律,木桶理论,马太效应,这些你都明白吗?...

    蝴蝶效应,青蛙现象,鳄鱼法则,鲇鱼效应,羊群效应,刺猬法则,手表定律,破窗理论,二八定律,木桶理论,马太效应,这些你都明白吗?1.蝴蝶效应:上个世纪70年代,美国一个名叫洛伦兹的气象学家在解释空气系统 ...

  7. 青蛙现象、鳄鱼法则、鲇鱼效应、羊群效应、刺猬法则、手表定律、破窗理论、二八定律、木桶理论、马太效应

    1.蝴蝶效应:上个世纪70年代,美国一个名叫洛伦兹的气象学家在解释空气系统理论时说,亚马逊雨林一只蝴蝶翅膀偶尔振动,也许两周后就会引起美国得克萨斯州的一场龙卷风.     蝴蝶效应是说,初始条件十分微 ...

  8. 二八定律、木桶理论等

    [蝴蝶效应][青蛙现象][鳄鱼法则] [鲇鱼效应] [羊群效应] [刺猬法则] [手表定律] [破窗理论][二八定律][木桶理论] [马太效应] [鸟笼逻辑] [责任分散效应][帕金森定律] [晕轮效 ...

  9. 各种效应:蝴蝶效应、青蛙现象、鳄鱼法则、鲇鱼效应、羊群效应、刺猬法则、手表定律、破窗理论、二八定律、木桶理论、马太效应

    蝴蝶效应.青蛙现象.鳄鱼法则.鲇鱼效应.羊群效应.刺猬法则.手表定律.破窗理论.二八定律.木桶理论.马太效应,这些你都明白吗?­ 1.蝴蝶效应:上个世纪70年代,美国一个名叫洛伦兹的气象学家在解释空气 ...

最新文章

  1. android 按键kl文件,Android添加新按键
  2. java论文翻译_Java技术(外文文献翻译)
  3. Linux 随机启动 Mysql​
  4. 用C#编写ActiveX控件
  5. 武大计算机几天出录取结果,录取大概要几天 多久录取结果出来
  6. mtk android 5.1 logo,Android ROM DIY之MTK平台手机通用移植
  7. Atitit.vod 视频播放系统 影吧系统的架构图 架构体系 解决方案
  8. PowerDesigner15使用时的十五个问题
  9. linux应用程序逆向,Linux下查看并下载命令源码包(依据命令/应用程序逆向获取并且安装其所属源码包)...
  10. 古诗词学习-归园田居+牧童+凉州词·其一+马诗+逢雪宿芙蓉山主人+凉州词+别董大+枫桥夜泊+滁州西涧+渔歌子+塞下曲
  11. 传奇私服架设微端搭建教程
  12. 开发者如何提升和推销自己
  13. servlet3 文件上传
  14. 观光公交(codevs 1139)题解
  15. (Emitted value instead of an instance of Error) Do not use v-for index as key on <transition-group>
  16. 利用Python turtle库制作夜空
  17. 误操作导致系统进不去得重装,C盘资料没备份?!别慌,还有救!-200820
  18. Qt OpenGL 旋转、平移、缩放
  19. 关于ResNet50的解读
  20. java long 空_long类型判断是否为空

热门文章

  1. 搞一下 车载以太网实战
  2. 美国斯坦福大学研究人员利用人工智能生成模因
  3. CS-NL(CVPR2020) Cross-Scale Non-Local Attention and Exhaustive Self-Exemplars Mining
  4. html美化select样式,select样式美化(简单实用)
  5. ansi、unicode、UCS、UTF等概念(转)
  6. 如何用公式编辑器打求和符号?
  7. 水平居中和垂直居中的实现
  8. 「一文讲透」快消行业营销数字化转型
  9. Laravel Homestead安装和使用
  10. 【个人作品】在SIP客户端实现服务器端的IVR(互动式语音应答,即语音导航,自动语音话务员)功能