【洛谷】P1873 EKO / 砍树

news2024/10/6 16:28:09

原题链接:https://www.luogu.com.cn/problem/P1873

目录

1. 题目描述

2. 思路分析

3. 代码实现


1. 题目描述

2. 思路分析

整体思路:二分答案

设置一个变量highest来记录最高的树的高度,sum记录切下的木头的长度。令左边界l=0,右边界l=highest。进行二分,写一个bool类型的check()函数,当sum>=m,返回true,否则返回false。

最后输出l即可。

3. 代码实现

#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int N = 1e6 + 10;
int a[N], n, m, highest;
ll sum;

bool check(int x)
{
	sum = 0;
	for (int i = 1; i <= n; i++)
	{
		sum += max(0, a[i] - x);
	}
	if (sum >= m) return true;
	else return false;
}

int main()
{
	cin >> n >> m;
	for (int i = 1; i <= n; i++)
	{
		cin >> a[i];
		highest = max(highest, a[i]);
	}
	int l = 0, r = highest;
	while (l + 1 < r)
	{
		int mid = (l + r) / 2;
		if (check(mid)) l = mid;
		else r = mid;
	}
	cout << l << endl;
	return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/946383.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

java八股文面试[多线程]——公平锁

一个线程启动时刚好碰到另外的线程释放锁&#xff0c;则该线程会获取到锁&#xff0c;其他等待队列中的线程不会获取到锁。好处&#xff1a;减少线程状态切换&#xff08;不用在start()之后进入阻塞&#xff09;&#xff0c;提高吞吐量。 非公平锁 非公平锁是多个线程加锁时直接…

高通开发系列 - QTI守护进程服务介绍

By: fulinux E-mail: fulinux@sina.com Blog: https://blog.csdn.net/fulinus 喜欢的盆友欢迎点赞和订阅! 你的喜欢就是我写作的动力! 返回:专栏总目录 目录 代码位置和依赖关系功能介绍代码逻辑讲解外设节点关注的目录socket服务端初始化DPM客户端监听守护关键的数据结构体…

C# char曲线控件

一、char曲线显示随机数数据 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Runtime.InteropServices; using System.Text; using System.Threading; using Syst…

【JS案例】JS实现手风琴效果

JS案例手风琴 &#x1f31f;效果展示 &#x1f31f;HTML结构 &#x1f31f;CSS样式 &#x1f31f;实现思路 &#x1f31f;具体实现 1.绑定事件 2.自定义元素属性 3.切换菜单 &#x1f31f;完整JS代码 &#x1f31f;写在最后 &#x1f31f;效果展示 &#x1f31f;HTML…

如何使用pytest进行自动化测试

Pytest作为广泛使用的Python测试框架之一&#xff0c;可以用于单元测试、功能测试、性能测试等场合。自动化测试是功能测试的一种形式&#xff0c;可以使用Pytest编写并管理自动化测试用例&#xff0c;再执行相应的自动化测试。 功能测试通常包括接口测试和Web测试两种类型&am…

服务器端使用django websocket,客户端使用uniapp 请问服务端和客户端群组互发消息的代码怎么写的参考笔记

2023/8/29 19:21:11 服务器端使用django websocket,客户端使用uniapp 请问服务端和客户端群组互发消息的代码怎么写 2023/8/29 19:22:25 在服务器端使用Django WebSocket和客户端使用Uniapp的情况下&#xff0c;以下是代码示例来实现服务器端和客户端之间的群组互发消息。 …

使用GoLand进行远程调试

对部署进行配置 在此配置远程服务器地址&#xff0c;映射&#xff0c;是否自动上传(更新)等 选择SFTP类型 选择上传 另外给自动上传选项打钩 此时在本地修改某个文件&#xff0c;远程机器相应目录的文件&#xff0c;也会被同步修改 对远程调试进行配置 远程机器需要安装delve 而…

桃子叶片病害识别(图像连续识别和视频识别,Python代码,pyTorch框架,深度卷积网络模型,很容易替换为其它模型,带有GUI识别界面)

桃子叶片病害识别&#xff08;图像连续识别和视频识别&#xff0c;Python代码&#xff0c;pyTorch框架&#xff0c;深度卷积网络模型&#xff0c;很容易替换为其它模型&#xff0c;带有GUI识别界面&#xff09;_哔哩哔哩_bilibili 1.数据集分为三类 健康的桃子叶片 &#xff0c…

LeetCode(力扣)530. 二叉搜索树的最小绝对差Python

LeetCode530. 二叉搜索树的最小绝对差 题目链接代码 题目链接 https://leetcode.cn/problems/minimum-absolute-difference-in-bst/ 代码 递归 # Definition for a binary tree node. # class TreeNode: # def __init__(self, val0, leftNone, rightNone): # …

React【React是什么?、创建项目 、React组件化、 JSX语法、条件渲染、列表渲染、事件处理】(一)

文章目录 React是什么&#xff1f; 为什么要学习React React开发前准备 创建React项目 React项目结构简介 React组件化 初识JSX 渲染JSX描述的页面 JSX语法 JSX的Class与Style属性 JSX生成的React元素 条件渲染&#xff08;一&#xff09; 条件渲染 &#xff0…

浅谈卫星通信技术

目录 1.卫星的概念 2.卫星的具体作用 3.利用卫星进行通信的优势 4.卫星通信带来的技术变革 1.卫星的概念 卫星是指在地球轨道上运行的天体或人造物体。一般来说&#xff0c;我们所说的卫星主要指人造卫星&#xff0c;它是由人类设计、制造并送入轨道的人造宇宙飞行器。 人造…

海思SS528V100 开发环境搭建记录

1.拿到厂家的SDK 解压rar压缩包(aarch64-mix210-linux.tga 要用tar -zxvf命令解压)之后会得到三个文件夹 如下图高亮了 2.安装交叉编译工具链 tar -zxf aarch64-mix210-linux.tgz 解压文件&#xff0c;进入 aarch64-mix210-linux 目录&#xff0c;运行 chmod x aarch64-mix2…

如何实现Python自动化测试

Python自动化测试常用于Web应用、移动应用、桌面应用等的测试&#xff0c;在这我也准备了一份软件测试面试视频教程&#xff08;含接口、自动化、性能等&#xff09;&#xff0c;需要的可以直接在下方观看&#xff0c;你也直接点击文末小卡片免费领取资料文档 软件测试面试视频…

clion +espidf 搭建开发环境

1.离线安装esp32idf的环境后&#xff0c;将idf_frameworks的路径添加至环境变量如下图所示 2.打开powershell&#xff0c;输入export.ps1&#xff0c;如图所示 3.输入$env:Path&#xff0c;并将导出的环境变量复制到clion environment中 建立环境变量 如图所示

Jmeter性能综合实战 —— 签到及批量签到

提取性能测试的三个方面&#xff1a;核心、高频、基础功能 签 到 请 求 步 骤 1、准备工作&#xff1a; 签到线程组n HTTP请求默认值n HTTP cookie 管理器n 首页访问请求n 登录请求n 查看结果树n 调试取样器l HTTP代理服务器 &#xff08;1&#xff09;创建线程组 &#xf…

【python爬虫】中央气象局预报—静态网页图像爬取练习

静态网页爬取练习 中央气象局预报简介前期准备步骤Python爬取每日预报结果—以降水为例 中央气象局预报简介 中央气象台是中国气象局&#xff08;中央气象台&#xff09;发布的七天降水预报页面。这个页面提供了未来一周内各地区的降水预报情况&#xff0c;帮助人们了解即将到来…

TikTok墨西哥首场大促来袭!9月18日正式开启

TikTok目前在墨西哥拥有超过5750万活跃用户&#xff0c;2022年是下载量最高的App&#xff0c;新增了近1100万个用户&#xff0c;增长率超过了25%&#xff0c;在极短的时间里迅速成为了最受墨西哥人&#xff0c;尤其是年轻用户喜欢的应用程序之一&#xff0c;在所有社媒中的渗透…

博途1200脉冲输出控制速度轴(轴工艺对象基本配置)

这里的1200脉冲轴,主要用来完成线缆包材绕包时的重叠率控制。关于重叠率的具体概念,这里不再阐述,大家可以看下面的文章链接, 重叠率控制 重叠率控制(算法详细介绍含SCL和梯形图源代码)_RXXW_Dor的博客-CSDN博客产品包装和线缆保护材料的包覆都需要进行材料包装重叠率的控…

JavaScript常见缓存数据处理方式 并说明特性

在JavaScript中&#xff0c;常见的几种缓存数据的方式: 1、LocalStorage&#xff1a;使用LocalStorage可以将数据以键值对的形式存储在浏览器中&#xff0c;该数据在页面刷新后依然存在&#xff0c;只要不更换浏览器 或 清空缓存 这种缓存就会一直存在 我们执行 localStorage…

java错误处理百科

一、业务开发缺陷 ① 工期紧、逻辑复杂&#xff0c;开发人员会更多地考虑主流程逻辑的正确实现&#xff0c;忽略非主流程逻辑&#xff0c;或保障、补偿、一致性逻辑的实现&#xff1b; ② 往往缺乏详细的设计、监控和容量规划的闭环&#xff0c;结果就是随着业务发展出现各种各…