32| 伐木

代码实现

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;

#define int long long
const int N = 1e6 + 10;
int n, m,z;
int a[N];

int check(int mid)
{
	int cnt = 0;
	for (int i = 1; i <= n; i++) 
	{
		int x = a[i] - mid;
		if (x > 0) cnt += x;
	}
	return cnt;
}
signed main()
{
	cin >> n >> m;
	for (int i = 1; i <= n; i++) 
	{
		int x; cin >> x;
		a[i] = x;
		z = max(z, x);
	}
	int l = 1, r = z, mid;
	while(l < r)
	{
		mid = (l + r + 1) >> 1;
		if(check(mid) >= m) l = mid;
		else r = mid - 1;
	}
	cout << l << endl;
	return 0;
 } 
相关推荐
维克兜率天26 分钟前
【维克】指数调整:哪些股票会被“强制买入“?
人工智能·python·算法
蓝祁子yoky1 小时前
Qt学习日记 Day13:网络编程(一)-TCP基础与Socket实战
网络·qt·学习
罗西的思考1 小时前
【轻量化复刻大模型】线性注意力交互式演示
人工智能·算法·机器学习
神也畏惧菠萝1 小时前
Day08 Python流程控制从入门到上瘾:if/match/while/for四件套,从B站登录一路打到猜数字游戏
python·算法·数据存储·for·while·if·ifelse
箓维1 小时前
TCP Socket的进阶实现
网络·笔记·tcp/ip
二哈赛车手1 小时前
新人笔记---hermes定时功能设计,具体讲解以及可优化点
java·人工智能·笔记·spring·ai·typescript
揽星河..2 小时前
【C语言】分支和循环
c语言·c++·算法
架构师伯子明2 小时前
Ros 学习十三:IK Demo
学习
小羊没烦恼!2 小时前
关于分布式锁原理的一些学习与思考-redis分布式锁,zookeeper分布式锁
java·服务器·网络·学习·负载均衡