华为OD机试真题-不爱施肥的小布

2023-11-09

题目描述:
某农场主管理了一大片果园,fields[i]表示不同果林的面积,单位:(m^2),现在要为所有的果林施肥且必须在n天之内完成,否则影响收成。小布是果林的工作人员,他每次选择一片果林进行施肥,且一片果林施肥完后当天不再进行施肥作业。假设施肥机的能效为k,单位:(m^2lday),请问至少租赁能效k为多少的施肥机才能确保不影响收成?如果无法完成施肥任务,则返回-1。
输入描述:
第一行输入为m和n, m表示 fields 中的元素个数,n表示施肥任务必须在n天内(含n天)完成;第二行输入为fields,fields[i]表示果林i的面积,单位:(m^2)
对于每组数据,输出最小施肥机的能效k,无多余空格。补充说明:
1 <= fields.length <= 10^41 <=n<=10^9
1<= fieldsil<=10^9

#include <iostream>
#include <vector>
#include <algorithm>
#include <cmath>

using namespace std;

// 判断是否能在k天内完成施肥任务
bool canFinish(vector<long>& fields, int k, int n) {
	int days = 0;
	for (int i = 0; i < fields.size();i++ ) {
		if(fields[i]%k==0) days += fields[i] / k;
		else days += fields[i] / k + 1;
	}
	// 判断是否能在规定天数内完成施肥
	return days <= n;
}

int main() {
	int m;
	long n;
	cin >> m >> n;
	vector<long> fields(m);
	for (int i = 0; i < m; i++) {
		cin >> fields[i];
	}
	// 对果园按面积从大到小排序
	sort(fields.rbegin(), fields.rend());
	// 枚举最小的能效k,能在规定天数内完成施肥任务的最小值即为所求
	int left = 1, right = fields[0], ans = -1;
	while (left <= right) {
		long mid = left + (right - left) / 2;
		if (canFinish(fields, mid, n)) {
			ans = mid;
			right = mid - 1;
		}
		else {
			left = mid + 1;
		}
	}
	cout << ans << endl;
	return 0;
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

华为OD机试真题-不爱施肥的小布 的相关文章

  • 没有特殊字符的密码验证器

    我是 RegEx 的新手 已经进行了大量搜索 但没有找到任何具体内容 我正在编写一个验证密码字符串的正则表达式 可接受的字符串必须至少具有 4 种字符类型中的 3 种 数字 小写字母 大写字母 特殊字符 我对包含有一个想法 也就是说 如果这
  • 如何从 Visual Studio 将视图导航到其控制器?

    问题是解决方案资源管理器上有 29 个项目 而且项目同时具有 ASP NET MVC 和 ASP NET Web 表单结构 在MVC部分中 Controller文件夹中有大约100个子文件夹 每个文件夹至少有3 4个控制器 视图完全位于不同
  • 随着时间的推移,添加到 List 变得非常慢

    我正在解析一个大约有 1000 行的 html 表 我从一个字符串中添加 10 个字符串 td 每行到一个list td
  • free 和 malloc 在 C 中如何工作?

    我试图弄清楚如果我尝试 从中间 释放指针会发生什么 例如 看下面的代码 char ptr char malloc 10 sizeof char for char i 0 i lt 10 i ptr i i 10 ptr ptr ptr pt
  • 从经典 ASP 调用 .Net C# DLL 方法

    我正在开发一个经典的 asp 项目 该项目需要将字符串发送到 DLL DLL 会将其序列化并发送到 Zebra 热敏打印机 我已经构建了我的 DLL 并使用它注册了regasm其次是 代码库这使得 IIS 能够识别它 虽然我可以设置我的对象
  • 如何连接重叠的圆圈?

    我想在视觉上连接两个重叠的圆圈 以便 becomes 我已经有部分圆的方法 但现在我需要知道每个圆的重叠角度有多大 但我不知道该怎么做 有人有主意吗 Phi ArcTan Sqrt 4 R 2 d 2 d HTH Edit 对于两个不同的半
  • 用于 FTP 的文件系统观察器

    我怎样才能实现FileSystemWatcherFTP 位置 在 C 中 这个想法是 每当 FTP 位置添加任何内容时 我都希望将其复制到我的本地计算机 任何想法都会有所帮助 这是我之前问题的后续使用 NET 进行选择性 FTP 下载 ht
  • 对类 static constexpr 结构的未定义引用,g++ 与 clang

    这是我的代码 a cp p struct int2 int x y struct Foo static constexpr int bar1 1 static constexpr int2 bar2 1 2 int foo1 return
  • 需要帮助优化算法 - 两百万以下所有素数的总和

    我正在尝试做一个欧拉计划 http projecteuler net问题 我正在寻找 2 000 000 以下所有素数的总和 这就是我所拥有的 int main int argc char argv unsigned long int su
  • 重载 (c)begin/(c)end

    我试图超载 c begin c end类的函数 以便能够调用 C 11 基于范围的 for 循环 它在大多数情况下都有效 但我无法理解和解决其中一个问题 for auto const point fProjectData gt getPoi
  • 使用 C# 中的 CsvHelper 将不同文化的 csv 解析为十进制

    C 中 CsvHelper 解析小数的问题 我创建了一个从 byte 而不是文件获取 csv 文件的类 并且它工作正常 public static List
  • C# 动态/expando 对象的深度/嵌套/递归合并

    我需要在 C 中 合并 2 个动态对象 我在 stackexchange 上找到的所有内容仅涵盖非递归合并 但我正在寻找能够进行递归或深度合并的东西 非常类似于jQuery 的 extend obj1 obj2 http api jquer
  • C 函数 time() 如何处理秒的小数部分?

    The time 函数将返回自 1970 年以来的秒数 我想知道它如何对返回的秒数进行舍入 例如 对于100 4s 它会返回100还是101 有明确的定义吗 ISO C标准没有说太多 它只说time 回报 该实现对当前日历时间的最佳近似 结
  • 如何在 Android 中使用 C# 生成的 RSA 公钥?

    我想在无法假定 HTTPS 可用的情况下确保 Android 应用程序和 C ASP NET 服务器之间的消息隐私 我想使用 RSA 来加密 Android 设备首次联系服务器时传输的对称密钥 RSA密钥对已在服务器上生成 私钥保存在服务器
  • 编译时展开 for 循环内的模板参数?

    维基百科 here http en wikipedia org wiki Template metaprogramming Compile time code optimization 给出了 for 循环的编译时展开 我想知道我们是否可以
  • 相当于Linux中的导入库

    在 Windows C 中 当您想要链接 DLL 时 您必须提供导入库 但是在 GNU 构建系统中 当您想要链接 so 文件 相当于 dll 时 您就不需要链接 为什么是这样 是否有等效的 Windows 导入库 注意 我不会谈论在 Win
  • 使用特定参数从 SQL 数据库填充组合框

    我在使用参数从 sql server 获取特定值时遇到问题 任何人都可以解释一下为什么它在 winfom 上工作但在 wpf 上不起作用以及我如何修复它 我的代码 private void UpdateItems COMBOBOX1 Ite
  • 为什么C++代码执行速度比java慢?

    我最近用 Java 编写了一个计算密集型算法 然后将其翻译为 C 令我惊讶的是 C 的执行速度要慢得多 我现在已经编写了一个更短的 Java 测试程序和一个相应的 C 程序 见下文 我的原始代码具有大量数组访问功能 测试代码也是如此 C 的
  • C# 中最小化字符串长度

    我想减少字符串的长度 喜欢 这串 string foo Lorem ipsum dolor sit amet consectetur adipiscing elit Aenean in vehicula nulla Phasellus li
  • Mono 应用程序在非阻塞套接字发送时冻结

    我在 debian 9 上的 mono 下运行一个服务器应用程序 大约有 1000 2000 个客户端连接 并且应用程序经常冻结 CPU 使用率达到 100 我执行 kill QUIT pid 来获取线程堆栈转储 但它总是卡在这个位置

随机推荐

  • MATLAB——通过扫频数据反推系统伯德图

    1 获取扫频数据 导入MATLAB 2 计算控制器离散传函 根据扫频数据情况绘制控制器伯德图 3 根据控制器伯德图获取增益 相角数据 4 反算系统增益 相角数据 5 数据平滑处理 得到系统最终伯德图
  • element table 中sortable排序

    在项目中做表格的排序 我使用的是自定义的排序 也就是通过后台接口进行的排序 写个文章记录一下element的三种排序方式 在列中设置sortable属性即可实现以该列为基准的排序 接受一个Boolean 默认为false 可以通过 Tabl
  • API接口整理收集常用Get-Post请求供测试使用

    百度 api集市免费接口 IP地址查询 http apistore baidu com apiworks servicedetail 114 html 频道新闻API 易源 http apistore baidu com apiworks
  • 【XML】学习笔记第四章-schema

    Schema 概述 作用 与DTD相比Schema的优势 基础命名空间 模式 引用方法 通过xsi noNamespaceSchemaLocation引入 通过xsi shemaLocation引入 Schema的语法结构 定义元素的主要语
  • shell脚本3个整数从小到大排序

    read p 请输入一个整数 num1 read p 请输入一个整数 num2 read p 请输入一个整数 num3 不管谁大谁小 最后打印 echo n u m 1 num1 num1 num2
  • Goby自定义漏洞之EXP

    前言 自定义漏洞配合EXP 提高漏洞的利用速度 简直是爽的飞起 自从HVV的时候Goby发布HVV专版 羡慕死了 就是太菜没傍上红方大佬的腿 虽然最终用上了HVV专版 但是一些只有你自己知道的漏洞 或者比较偏门的漏洞 就需要咱们自己来编写P
  • react小练习-antd Form表单和Table表格的交互-Table动态添加数据

    文章目录 功能实现效果 代码背景 代码思路 代码实现 功能实现效果 点击添加按钮 输入表单内容 表单提交后数据动态添加到Table表格里 如图 初始数据 是在dva的mock文件模拟的死数据 点击添加 输入数据 表单提交后 数据添加到表格里
  • Android签名概述

    一 Android签名概述 我们已经知道的是 Android对每一个Apk文件都会进行签名 在Apk文件安装时 系统会对其签名信息进行比对 判断程序的完整性 从而决定该Apk文件是否可以安装 在一定程度上达到安全的目的 给定一个Apk文件
  • JAVA实现蛇形矩阵算法

    JAVA实现蛇形矩阵算法 蛇形矩阵是一种特殊的二维矩阵 其元素按照一定的规律排列成蛇形 这种算法可以通过JAVA编程语言来实现 本文将介绍如何使用JAVA编写代码来生成蛇形矩阵 并给出相应的源代码 蛇形矩阵的生成规则如下 第一行从左到右依次
  • 多租户系统设计

    多租户系统设计 SaaS 的系统分级 SaaS 系统架构成熟度模型的 5 个级别 从 混乱 到 乌托邦 第 0 级 混乱 每次新增一个客户 都会新增软件的一个实例 第 1 级 受控的混乱 所有客户都运行在软件的同一个版本上 而且任何的定制化
  • 当在浏览器中输入一个域名后,会发生什么

    今天 去哪儿网Geely老师分享了他在校招时的一个面试题 当输www qunar com时发生了什么 真不是做广告哈 因为学的并没有很扎实 不能更深更广的分析这个问题 遂 百度一下 发现这篇文章并转载保存下来 同时也分享一下 希望大家可以更
  • vue-cli3.0打包时如何忽略某个第三方依赖包

    前几天接到了用vue重构某个业务模块的需求 常规开发不做讨论 但是在打包时需要排除业务中使用的某个第三方依赖包 代码如下 main js import Vue from vue import Cesium from cesium Cesiu
  • 解决Win7启动时出现“windows未能启动。原因可能是最近更改了硬件或软件”的问题

    搜索资料的时候发现个小问题 问题描述 在给ThinkPad T490做win7系统时 出现了 windows未能启动 原因可能是最近更改了硬件或软件 的问题 一直启动不来 在系统盘微PE中甚至还会出现 0x490 找不到元素 的问题 如何来
  • cuda安装笔记

    更新2023 3 4 我笔记本用vs编译后老是提示no kernel image is available for execution on the device 一直以为是驱动版本太高了或者cudatoolkit版本太高了 后来才知道是版
  • 【数据挖掘】知识点总结

    一 绪论 什么是数据挖掘 就是通过算法从大量的数据中搜索隐藏在其中的信息 数据挖掘的基本任务 聚类分析 异常检测 关联分析和预测建模 高维性和维灾难 随着维度的增加计算复杂度也随之增加 二 数据 不同的属性类型 标称 例如 邮政编码 定性数
  • 大数据应用——Linux常用的命令

    帮助命令 1 基本语法 help 命令 功能描述 获得shell内置命令的帮助信息 2 案例实操 1 查看cd命令的帮助信息 root hadoop01 help cd 常用快捷键 常用快捷键 功能 ctrl c 停止进程 ctrl l 清
  • Python(十五)读取Excel

    今天来实战演示如何封装读取Excel方法 第一步 准备一个Excel文件 sheet页命名为 login 学习技术交流群 704807680 第二步 编写代码找到Excel文件所在的文件夹路径 path os path dirname os
  • 机器学习算法——混淆矩阵(Confusion Matrix)之鸢尾花实例

    一 理论 什么是混淆矩阵 其实就是把所有类别的预测结果与真实结果按类别放置到了同一个表里 在这个表里我们可以清楚地看到每个类别正确识别的数量和错误识别的数量 混淆矩阵在什么情况下最好呢 答案是类别不平衡时 混淆矩阵是除了ROC曲线和AUC之
  • chatGPT高考作文

    百花齐放 春满人间 吹灭别人的灯 并不会让自己更加光明 阻挡别人的路 也不会让自己行得更远 这是一句古老而智慧的话语 告诉我们要尊重和包容他人 要与人和睦相处 要共同进步 同样的道理 也适用于文化的交流和发展 文化是一个民族的灵魂 是一个国
  • 华为OD机试真题-不爱施肥的小布

    题目描述 某农场主管理了一大片果园 fields i 表示不同果林的面积 单位 m 2 现在要为所有的果林施肥且必须在n天之内完成 否则影响收成 小布是果林的工作人员 他每次选择一片果林进行施肥 且一片果林施肥完后当天不再进行施肥作业 假设