当前位置: 首页 > news >正文

华为OD E卷(100分)50-预订酒店

前言

        工作了十几年,从普通的研发工程师一路成长为研发经理、研发总监。临近40岁,本想辞职后换一个相对稳定的工作环境一直干到老, 没想到离职后三个多月了还没找到工作,愁肠百结。为了让自己有点事情做,也算提高一下自己的编程能力,无聊之余打算用一些大厂的编程题练练手。希望通过这些分享能够帮到一些人,也希望能和看到此文的大神们沟通交流,提升自己,更希望在此期间能够找到一份理想的工作。

题目描述

        暑假来临,卢小姐计划前往某个旅游景点游玩。他在网上搜索到了各种价位的酒店,这些酒店的价格存储在一个长度为 nnn 的数组 AAA 中。卢小姐的心理价位是 xxx 元。现在,请你帮助卢小姐从这些酒店中筛选出 kkk 个价格最接近 xxx 元的酒店(n≥k>0),并按照价格从低到高的顺序打印这些酒店的价格。

输入描述

        第一行包含三个整数 n、k 和 x,分别表示酒店数量、需要筛选的酒店数量和卢小姐的心理价位。

        第二行包含 n 个整数 A1,A2,…,An​,表示每家酒店的价格。

输出描述

        输出一行,包含 k 个整数,表示筛选出的 k 个酒店的价格,按照从低到高的顺序排列。

示例1

输入:

10 5 6
1 2 3 4 5 6 7 8 9 10

输出:

4 5 6 7 8

说明:从10个酒店中选择5个最接近6元的酒店,按价格从低到高排序后输出。

 示例2

输入:

10 4 6
10 9 8 7 6 5 4 3 2 1

输出:

4 5 6 7

说明:从10个酒店中选择4个最接近6元的酒店,按价格从低到高排序后输出。

 示例3

输入:

6 3 1000
30 30 200 500 70 300

输出:

200 300 500

说明:从6个酒店中选择3个最接近1000元的酒店,按价格从低到高排序后输出。

数据范围

  • 1≤n≤10^5
  • 1≤k≤n
  • 1≤x≤10^9
  • 1≤Ai≤10^9 

题解

Java实现

package huawei.e100;import java.util.Arrays;
import java.util.Scanner;/**
* @author arnold
* @date 2025年1月7日
* 预订酒店*/
public class T50 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);while(sc.hasNext()){int n = sc.nextInt();int k = sc.nextInt();int x = sc.nextInt();int[] data = new int[n];// 记录差值int[] diff = new int[n];for (int i = 0; i < n; i++) {data[i] = sc.nextInt();diff[i] = Math.abs(data[i] -x);}// 找出满足条件的最大差值Arrays.sort(diff);int maxDiff = diff[k-1];// 查找满足条件的第一个值Arrays.sort(data);int startIndex = 0;for (int i = 0; i < data.length; i++) {if(Math.abs(data[i] -x) <= maxDiff) {startIndex = i;break;}}// 按顺序输出for (int i = startIndex; i < startIndex + k; i++) {System.out.print(data[i] + " ");}}}}


http://www.mrgr.cn/news/83125.html

相关文章:

  • 计算机网络之---MAC协议
  • Word中所有的通配符使用方式[Word如何批量删除中文标点符号,英文标点符号,英文字母符号,数字符号,中文汉字符号]
  • 基于Query去索引Doc:实现高效且精准的商品召回
  • Win32汇编学习笔记06.APIHook
  • 12 USART串口通讯
  • 信号处理-消除趋势项
  • 示波器Oscilloscope的使用方法
  • (长期更新)《零基础入门 ArcGIS(ArcScene) 》实验七----城市三维建模与分析(超超超详细!!!)
  • 学习记录:C++ 中 const 引用的使用及其好处
  • Spring AMQP-保证消费者消息的可靠性
  • 通俗易懂之线性回归时序预测PyTorch实践
  • 在 Ubuntu 22.04 上部署 AppArmor 应用安全教程
  • 现场展示deepseek VS openAI o1模型大对比
  • 论文笔记:FDTI: Fine-grained Deep Traffic Inference with Roadnet-enriched Graph
  • STM32供电参考设计
  • Windows下安装最新版的OpenSSL,并解决OpenSSL不是当前版本的问题,或者安装不正确的问题
  • 如何在 Ubuntu 22.04 上配置 Logrotate 高级教程
  • SpringBoot操作spark处理hdfs文件
  • 机器学习之随机森林算法实现和特征重要性排名可视化
  • B树及其Java实现详解
  • 《Spring Framework实战》7:4.1.2.容器概述
  • 【Rust自学】11.1. 编写和运行测试
  • 如何使用vue引入three.js
  • 人工智能的发展领域之GPU加速计算的应用概述、架构介绍与教学过程
  • 7ZIP 常见使用问题解决办法
  • B+树的原理及实现