租车骑绿岛
租车骑绿岛
真题目录: 点击去查看
E 卷 100分题型
题目描述
部门组织绿岛骑行团建活动。租用公共双人自行车,每辆自行车最多坐两人,最大载重M。给出部门每个人的体重,请问最多需要租用多少双人自行车。
输入描述
第一行两个数字m、n,分别代表自行车限重,部门总人数。
第二行,n个数字,代表每个人的体重,体重都小于等于自行车限重m。
- 0<m<=200
- 0<n<=1000000
输出描述
最小需要的双人自行车数量。
用例1
输入
3 4
3 2 2 1
输出
3
说明
无
题解
本题需要最少的车辆,即尽可能组合出重量小于等于m的两人组。贪心算法 + 双指针
- 按体重进行升序排序。left 只想最小体重, right指向最大体重。
- arr[left] + arr[right] <= m left ++, right –
- arr[left] + arr[right] > m right – , 优先减少体重大的
c++
#include <ios>
#include<iostream>
#include<vector>
#include<string>
#include <utility>
#include <sstream>
#include<algorithm>
using namespace std;int main() {int m, n;cin >> m >> n;int res= 0;vector<int> ans(n);for (int i = 0; i < n; i++) {cin >> ans[i];}// 排序sort(ans.begin(), ans.end());int right = n - 1;int left = 0;while (left <= right) {int tmp = ans[left] + ans[right];// 说明不能同时两个人乘坐if (tmp > m) {right--;res++;// 能够同时乘坐} else {right--;left++;res++;}}cout << res;return 0;
}
JAVA
import java.util.Arrays;
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int m = sc.nextInt();int n = sc.nextInt();int[] arr = new int[n];for (int i = 0; i < n; i++) {arr[i] = sc.nextInt();}System.out.println(getResult(arr, m));}public static int getResult(int[] arr, int m) {Arrays.sort(arr);int count = 0;int i = 0;int j = arr.length - 1;while (i < j) {if (arr[i] + arr[j] <= m) i++;j--;count++;}if (i == j) count++;return count;}
}
Python
# 输入获取
m, n = map(int, input().split())
arr = list(map(int, input().split()))# 算法入口
def getResult(arr, m, n):arr.sort()count = 0i = 0j = n - 1while i < j:if arr[i] + arr[j] <= m:i += 1j -= 1count += 1if i == j:count += 1return count# 算法调用
print(getResult(arr, m, n))
JavaScript
/* JavaScript Node ACM模式 控制台输入获取 */
const readline = require("readline");const rl = readline.createInterface({input: process.stdin,output: process.stdout,
});const lines = [];
rl.on("line", (line) => {lines.push(line);if (lines.length === 2) {const [m, n] = lines[0].split(" ").map(Number);const arr = lines[1].split(" ").map(Number);console.log(getResult(arr, m, n));lines.length = 0;}
});function getResult(arr, m, n) {arr.sort((a, b) => a - b);let count = 0;let i = 0;let j = arr.length - 1;while (i < j) {if (arr[i] + arr[j] <= m) i++;j--;count++;}if (i === j) count++;return count;
}
Go
package mainimport ("bufio""fmt""os""sort""strconv""strings"
)func main() {// 读取输入scanner := bufio.NewScanner(os.Stdin)scanner.Scan()firstLine := strings.Split(scanner.Text(), " ")m, _ := strconv.Atoi(firstLine[0])n, _ := strconv.Atoi(firstLine[1])scanner.Scan()inputNumbers := strings.Split(scanner.Text(), " ")ans := make([]int, n)for i := 0; i < n; i++ {ans[i], _ = strconv.Atoi(inputNumbers[i])}// 排序sort.Ints(ans)res := 0right := n - 1left := 0for left <= right {tmp := ans[left] + ans[right]// 说明不能同时两个人乘坐if tmp > m {right--res++// 能够同时乘坐} else {right--left++res++}}fmt.Println(res)
}相关文章:
租车骑绿岛
租车骑绿岛 真题目录: 点击去查看 E 卷 100分题型 题目描述 部门组织绿岛骑行团建活动。租用公共双人自行车,每辆自行车最多坐两人,最大载重M。给出部门每个人的体重,请问最多需要租用多少双人自行车。 输入描述 第一行两个数字m、n&…...
Pytorch - YOLOv11自定义资料训练
►前言 本篇将讲解目前最新推出的YOLOv11搭配Roboflow进行自定义资料标注训练流程,透过Colab上进行实作说明,使大家能够容易的了解YOLOv11的使用。 ►YOLO框架下载与导入 ►Roboflow的资料收集与标注 进行自定义资料集建置与上传 透过Roboflow工具进行…...
微服务与docker
准备工作 在课前资料中给大家提供了黑马商城项目的资料,我们需要先导入这个单体项目。不过需要注意的是,本篇及后续的微服务学习都是基于Centos7系统下的Docker部署,因此你必须做好一些准备: Centos7的环境及一个好用的SSH客户端装好Docker会使用Docker如果是学习过上面Doc…...
1.23 消息队列
使用消息队列,实现两个终端相互聊天 程序代码: w1.c #include <stdio.h> #include <string.h> #include <unistd.h> #include <stdlib.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h&g…...
【华为路由的arp配置】
华为路由的arp配置 ARP:IP地址与MAC地址的映射。 R1: g0/0/0:10.1.1.254/24 g0/0/1:10.1.2.254/24 PC1: 10.1.1.1/16 PC2: 10.1.1.2/16 PC3: 10.1.2.3/16 动态ARP 查看PC1的arp表,可以看到,列表为空。 查看R1的arp表 在PC3上ping命令测…...
绘制决策树的尝试1
代码复制 import pydotplus 复制 - 这一行代码用于导入pydotplus模块,这是一个用来在Python中创建图形的工具。2. python from IPython.display import Image 这一行代码用于从IPython显示模块中导入Image类,它允许我们在Jupyter笔记本中显示图像。…...
概率论里的特征函数,如何用卷积定理去理解
概率论里的特征函数,如何用卷积定理去理解_哔哩哔哩_bilibili...
Spring 是如何解决循环依赖问题
Spring 框架通过 三级缓存 机制来解决循环依赖问题。循环依赖是指两个或多个 Bean 相互依赖,形成一个闭环,例如 Bean A 依赖 Bean B,而 Bean B 又依赖 Bean A。Spring 通过提前暴露未完全初始化的 Bean 来解决这个问题。 以下是 Spring 解决…...
Linux 目录操作详解
Linux目录操作详解 1. 获取当前工作目录1.1 getcwd()1.2 get_current_dir_name() 2. 切换工作目录2.1 chdir() 3. 创建和删除目录3.1 mkdir()3.2 rmdir() 4. 获取目录中的文件列表4.1 opendir() 打开目录4.2 readdir() 读取目录内容4.3 closedir() 关闭目录 5. dirent 结构体6.…...
Elasticsearch的经典面试题及详细解答
以下是一些Elasticsearch的经典面试题及详细解答: 一、基础概念与原理 什么是Elasticsearch? 回答: Elasticsearch是一个基于Lucene的分布式搜索引擎,提供了RESTful API,支持多租户能力。它能够快速、近实时地存储、搜…...
Linux-arm(1)ATF启动流程
Linux-arm(1)ATF启动流量 Author:Once Day Date:2025年1月22日 漫漫长路有人对你微笑过嘛… 全系列文章可查看专栏: Linux实践记录_Once_day的博客-CSDN博客 参考文档: ARM Trusted Firmware分析——启动、PSCI、OP-TEE接口 Arnold Lu 博…...
C#编程:List.ForEach与foreach循环的深度对比
在C#中,List<T>.ForEach 方法和传统的 foreach 循环都用于遍历列表中的元素并对每个元素执行操作,但它们之间有一些关键的区别。 List<T>.ForEach 方法 方法签名:public void ForEach(Action<T> action)类型:…...
C语言文件操作:标准库与系统调用实践
目录 1、C语言标准库文件操作 1.1.题目要求: 1.2.函数讲解: fopen 函数原型 参数 常用的打开模式 返回值 fwrite函数 函数原型 参数 返回值 注意事项 fseek函数 函数原型 参数 返回值 fread函数 函数原型 参数 返回值 fclose 函数…...
代码随想录 栈与队列 test 7
347. 前 K 个高频元素 - 力扣(LeetCode) 首先想到哈希,用key来存元素,value来存出现次数,最后进行排序,时间复杂度约为o(nlogn)。由于只需求前k个,因此可以进行优化,利用堆来维护这…...
C语言练习(21)
有一行电文,已按下面规律译成密码: A→Za→Z B→Yb→y C→Xc→X 即第1个字母变成第26个字母,第2个字母变成第25个字母,第i个字母变成第(26-i十1)个字母。非字母字符不变。假如已知道密码是Umtorhs&…...
智能手机“混战”2025:谁将倒下而谁又将突围?
【潮汐商业评论原创】 “去年做手机比较艰难,几乎每个品牌都在调价、压货,像华为这种以前都不给我们分货的厂商,也开始成为我的主要库存。不过今年开头比较好,20号国补一开始,店里的人流和手机销量就明显涨了不少&…...
计算机图形学:实验一 OpenGL基本绘制
1.OpenGL的环境配置: 集成开发环境Visual Studio Community 2019的安装: 在Windows一栏选择使用C的桌面开发;再转到“单个组件”界面,在“编译器、生成工具和运行时”一栏选择用于“Windows的C CMake工具”;然后转到…...
二分查找题目:快照数组
文章目录 题目标题和出处难度题目描述要求示例数据范围 解法思路和算法代码复杂度分析 题目 标题和出处 标题:快照数组 出处:1146. 快照数组 难度 7 级 题目描述 要求 实现支持下列接口的快照数组: SnapshotArray(int length) \textt…...
深度学习|表示学习|卷积神经网络|参数共享是什么?|07
如是我闻: Parameter Sharing(参数共享)是卷积神经网络(CNN)的一个重要特性,帮助它高效地处理数据。参数共享的本质就是参数“本来也没有变过”。换句话说,在卷积层中,卷积核的参数&…...
基于相机内参推导的透视投影矩阵
基于相机内参推导透视投影矩阵(splatam): M c a m [ 2 ⋅ f x w 0.0 ( w − 2 ⋅ c x ) w 0.0 0.0 2 ⋅ f y h ( h − 2 ⋅ c y ) h 0.0 0 0 f a r n e a r n e a r − f a r 2 f a r ⋅ n e a r n e a r − f a r 0.0 0.0 − 1.0 0.0 ] M_…...
逆向实战:WASM加密在荔枝网x-itouchtv-ca参数中的定位与Hook技巧
1. WASM加密技术解析 WebAssembly(简称WASM)是一种新兴的二进制指令格式,它的出现让前端加密技术迈上了新台阶。与传统JavaScript加密相比,WASM具有明显的性能优势。在我的实际测试中,相同加密算法在WASM环境下的执行速…...
普通程序员有必要深入学习JVM底层原理吗?
对于JVM,我想大部分小伙伴都是要面试了才会去学,其余时间基本不会去看。但值得一说的是,当你工作多年之后,你遇到的项目会越来越复杂,遇到的问题也会越来越复杂:各种古怪的内存溢出,死锁&#x…...
Qt5.15.2在RK3588上的多媒体支持问题:如何正确配置GStreamer插件避免‘no service found‘错误
Qt5.15.2在RK3588上的多媒体支持问题:如何正确配置GStreamer插件避免no service found错误 在嵌入式Linux系统上部署Qt多媒体应用时,开发者经常会遇到各种依赖库和插件配置问题。特别是在RK3588这样的高性能ARM平台上,QtMultimedia模块与GStr…...
八股文的终结:为什么2026年大厂面试开始大规模考察“内存安全”?
在2026年的北美IT求职市场中,底层系统开发(Infrastructure, Backend, Systems Engineering)岗位的技术面试逻辑正在经历一场深刻的底层范式转换。过去几年中,候选人凭借熟练背诵C虚函数表、STL底层源码剖析、以及各类设计模式等标…...
SiameseUIE参数详解:custom_entities与通用规则双模式解析
SiameseUIE参数详解:custom_entities与通用规则双模式解析 1. 核心功能概述 SiameseUIE作为信息抽取领域的实用模型,提供了两种截然不同的实体抽取模式,让用户可以根据实际需求灵活选择。这两种模式就像是给你的数据提取工作配备了两套不同…...
新手友好:在快马平台上通过实践快速掌握trea核心概念
作为一个刚接触trea技术的新手,我最近在InsCode(快马)平台上找到了特别适合入门的学习方式。这个平台最让我惊喜的是,不需要从零开始搭建环境,就能直接动手实践trea的核心概念。 理解trea的基本原理 刚开始接触trea时,最困惑的就…...
dfs经典例题——迷宫问题(利用二维数组优化方向判断)
思路:首先关于方向问题,我们可以设定一个默认方向,比如先默认向右,触底向下,然后再是向左向上。只需要平行在dfs函数中即可,每次递归会自动依次按照if条件进行合适方向的查找初始量:地图数组&am…...
构建智能压枪系统:罗技鼠标宏的底层技术与实战优化
构建智能压枪系统:罗技鼠标宏的底层技术与实战优化 【免费下载链接】logitech-pubg PUBG no recoil script for Logitech gaming mouse / 绝地求生 罗技 鼠标宏 项目地址: https://gitcode.com/gh_mirrors/lo/logitech-pubg 问题剖析:后坐力控制的…...
Claude Code每日更新速览(v2.1.90)-2026/04/02
本文前言: Claude Code 的进化速度,已经到了一种让人来不及消化的程度。根据 github.com/anthropics/claude-code/blob/main/CHANGELOG.md 获取最新的变更,跟紧 Claude Code新功能、新趋势。最新版本:v2.1.90提交时间:…...
Phi-3-mini-4k-instruct-gguf快速部署:7860端口网页服务+独立venv隔离环境实录
Phi-3-mini-4k-instruct-gguf快速部署:7860端口网页服务独立venv隔离环境实录 1. 模型简介 Phi-3-mini-4k-instruct-gguf 是微软 Phi-3 系列中的轻量级文本生成模型 GGUF 版本。这个模型特别适合以下场景: 智能问答文本改写与润色内容摘要生成简短创意…...
