华为OD机试(JAVA)真题 2023(汽水瓶\随机数\进制转换)

2023-11-16

系列文章目录



前言

在这里插入图片描述


一、 1.汽水瓶

某商店规定:三个空汽水瓶可以换一瓶汽水,允许向老板借空汽水瓶(但是必须要归还)。
小张手上有n个空汽水瓶,她想知道自己最多可以喝到多少瓶汽水。
数据范围:输入的正整数满足
1


100

1≤n≤100

注意:本题存在多组输入。输入的 0 表示输入结束,并不用输出结果。
输入描述:
输入文件最多包含 10 组测试数据,每个数据占一行,仅包含一个正整数 n( 1<=n<=100 ),表示小张手上的空汽水瓶数。n=0 表示输入结束,你的程序不应当处理这一行。

输出描述:
对于每组测试数据,输出一行,表示最多可以喝的汽水瓶数。如果一瓶也喝不到,输出0。

示例1
输入例子:
3
10
81
0
输出例子:
1
5
40
例子说明:
样例 1 解释:用三个空瓶换一瓶汽水,剩一个空瓶无法继续交换
样例 2 解释:用九个空瓶换三瓶汽水,剩四个空瓶再用三个空瓶换一瓶汽水,剩两个空瓶,向老板借一个空瓶再用三个空瓶换一瓶汽水喝完得一个空瓶还给老板

import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextInt()) { // 注意 while 处理多个 case
            int a = in.nextInt();
             if(a == 0) break;
            System.out.println(fun(a));
        }
    }
    public static int fun(int a){
        if(a == 1) return 0 ;
        if(a == 2)return 1 ;
        return a / 2 ;
    }
}

2个瓶子 就在借一个 恰好喝一个 还一个
奇数就是 n/2 剩一个空瓶 偶数就是n/2

二 明明的随机数

明明生成了

N个1到500之间的随机整数。请你删去其中重复的数字,即相同的数字只保留一个,把其余相同的数去掉,然后再把这些数从小到大排序,按照排好的顺序输出。

数据范围:

1≤n≤1000 ,输入的数字大小满足

1≤val≤500

输入描述:
第一行先输入随机整数的个数 N 。
接下来的 N 行每行输入一个整数,代表明明生成的随机数。
具体格式可以参考下面的"示例"。
输出描述:
输出多行,表示输入数据处理后的结果

示例1
输入例子:
3
2
2
1
输出例子:
1
2
例子说明:
输入解释:
第一个数字是3,也即这个小样例的N=3,说明用计算机生成了3个1到500之间的随机整数,接下来每行一个随机数字,共3行,也即这3个随机数字为:
2
2
1
所以样例的输出为:
1
2

import java.util.*;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
         int n = in.nextInt();
          
          TreeSet<Integer> set = new TreeSet<>();
          for(int i = 0 ; i < n ; i++){
                 set.add(in.nextInt());
          }
         for(Integer a : set){
            System.out.println(a);
         }
    }
}

进制转换
写出一个程序,接受一个十六进制的数,输出该数值的十进制表示。

数据范围:保证结果在

1≤n≤2 ^31 −1

输入描述:
输入一个十六进制的数值字符串。

输出描述:
输出该数值的十进制字符串。不同组的测试用例用\n隔开。

示例1
输入例子:
0xAA
输出例子:
170

import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNextLine()) {
            String s = in.nextLine();

            int count = 0;

            for (int i = 0; i < s.length() - 2; i++) {
                //由于前面两位是'0x',故从第三位开始
                char tc = s.charAt(i + 2);
                int t = 0;    //记录字母转换成的数值

                //将字母转换为数值
                if (tc >= '0' && tc <= '9')
                    t = tc - '0';
                //字母'A'/'a'~'F''f'对应数字10~15
                else if (tc >= 'A' && tc <= 'F')
                    t = tc - 'A' + 10;
                else if (tc >= 'a' && tc <= 'f')
                    t = tc - 'a' + 10;
                //计算加和
                count += t * Math.pow(16, s.length() - i - 3);
            }
            System.out.println(count);
        }
        }
    }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

华为OD机试(JAVA)真题 2023(汽水瓶\随机数\进制转换) 的相关文章

  • 如何在 JPA 中使用枚举

    我有一个电影租赁系统的现有数据库 每部电影都有一个评级属性 在 SQL 中 他们使用约束来限制该属性的允许值 CONSTRAINT film rating check CHECK rating text text OR rating tex
  • 使用 Spring MVC 返回 PDF 文件

    实际上 我有这个功能 我有一个框架 可以在其中设置 URL ip port birt preview report report rptdesign format pdf parameters 并且该框架呈现 PDF 文件 但我想隐藏该网址
  • Eclipse 自动完成更改变量名称

    只是一个愚蠢的问题 但很难搜索 因为有很多关于 Eclipse 自动完成的主题 而且很难找到与我的问题匹配的内容 所以问题是 如果我写 MyClass MyVarName 然后按空格键 添加 new MyClass Eclipse 自动添加
  • 警告:跳过条目,因为它不是绝对 URI。 NetBeans 中的 GlassFish

    我成功安装了 GlassFish 但是 当我启动服务器时 我收到两条警告消息 警告 跳过条目 因为它不是绝对 URI 那是关于什么的 Launching GlassFish on Felix platform Aug 09 2014 10
  • Jodatime 日期格式

    是否可以格式化 JodaTime 日期 这是代码 private static LocalDate priorDay LocalDate date1 do date1 date1 plusDays 1 while date1 getDayO
  • 总结二维数组

    鉴于我当前的程序 我希望它在用户输入所有值后计算每列和每行的总和 我当前的代码似乎只是将数组的值加倍 这不是我想要做的 例如 如果用户输入具有以下值 1 2 3 2 3 4 3 4 5 的 3x3 矩阵 则看起来就像我在下面的程序中对其进行
  • MongoDB:尝试从 JSON 读取 Long 导致 java.lang.Integer 无法转换为 java.lang.Long

    我有一个代码可以从 MongoDB 读取特定格式的数据 我需要测试一下 为此 我使用要测试的数据创建一个 JSON id ObjectId 57552e32e4b0839ede67e0af serial 574000690 startDat
  • 在java.util中获取错误ArrayList不带参数[重复]

    这个问题在这里已经有答案了 我已经创建了一个类 Student 现在我尝试将我的 Student 对象存储在 ArrayList 中 但在编译 ArrayList 不接受参数时出现错误 我已经检查了我的代码很多次 但找不到问题所在 我的学生
  • 我们必须将 .class 文件放在 Tomcat 目录中的位置

    我必须把我的 class文件在 Tomcat 目录中 在我的 Java Complete Reference 书中 他们告诉将其放入C Program Files Apache Tomcat 4 0 webapps examples WEB
  • Java 7 中 Object 和 int 的比较

    最近我偶然发现了一个问题 让我停下来思考 对我来说 下面的代码应该总是会触发错误 但是当我的一位同事问我为什么 Eclipse 没有显示错误时 我无法回答任何问题 class A public static void main String
  • wsdl 没有服务元素

    我必须使用 WCF Web 服务并获得 WSDL 外部的 因此无法控制 WSDL 在 WSDL 定义中 我没有找到包含服务 端口和地址元素的服务元素 WSDL 中不存在这种情况正常吗 这对于 WCF WSDL 来说很常见吗 我正在尝试使用轴
  • 多对多不检索映射数据

    Spring boot 2 5 6 我无法安装版本 概要文件 java Getter Setter NoArgsConstructor AllArgsConstructor EqualsAndHashCode FieldDefaults l
  • 在Spring-Boot中,我们如何在同一个项目中连接两个数据库(Mysql数据库和MongoDB)?

    我正在尝试创建一个 Spring Boot 项目 其中我有一个要求 我想连接到不同的数据库 MySql 和 MongoDB 我是否需要做一些特殊的事情来连接到这两个数据库 或者 spring boot 会自动计算出自己连接到这两个数据库 我
  • 我可以关闭并重新打开套接字吗?

    我学习了一个使用套接字的例子 在此示例中 客户端向服务器发送请求以打开套接字 然后服务器 侦听特定端口 打开套接字 一切都很好 套接字从双方 客户端和服务器 打开 但我仍然不清楚这个东西有多灵活 例如 客户端是否可以关闭一个打开的 从两端
  • 链表中的虚拟节点

    问 什么时候使用它们 作业问题 列表中的第一个和最后一个节点 有时用作列表中的第一个和最后一个节点 从未用作列表中的第一个和最后一个节点 维基百科说 哨兵节点是与链接一起使用的专门指定的节点 列表和树作为遍历路径终止符 哨兵节点的作用是 不
  • Java .split("|") 不工作

    我刚刚遇到了一个问题分割法 http docs oracle com javase 6 docs api java lang String html split 28java lang String 29for 字符串不适用于字符 作为一个
  • Microsoft JDBC 中的 JTDS 属性相当于什么?

    我正在将 JTDS 连接更改为 Microsoft JDBC 并且我看到存在于http jtds sourceforge net faq html http jtds sourceforge net faq htmlMicrosoft JD
  • Drools:为什么是无状态会话?

    Drools 使用会话来存储运行时数据 为此 有两种会话 无状态和有状态 与无状态会话相比 有状态会话允许迭代调用 并且似乎比无状态会话具有所有优势 那么为什么会有无状态会话呢 他们服务的目的是什么 与有状态会话相比 它们的优势是什么 谢谢
  • 如何隐藏或删除 Android HoneyComb 中的状态栏?

    如何隐藏或删除 Android HoneyComb 中的状态栏 每次运行应用程序时 我都会发现某些内容必须被状态栏覆盖 我尝试改变AndroidManifest xml 但没有任何改变 你不知道 它被认为是永久的屏幕装饰 就像电容式主页 菜
  • 将带有时区的 Joda-Time `DateTime` 转换为没有时区的 DateTime?

    Given a DateTime http www joda org joda time apidocs org joda time DateTime html例如2015 07 09T05 10 00 02 00 using 乔达时间 h

随机推荐

  • paddle window10环境下使用conda安装

    话 一开始也是根据别人的文章 疯狂报错 我的建议是自己先根据文档进行搭建 pip 和 conda两种方式都进行了尝试 个人更推荐conda 使用pip好像会出现版本不兼容的问题 其次是会出现要大量手动pip install 的情况 cond
  • 使用coloc 进行 QTL 共定位Colocalization

    GWAS找到显著信号位点后 需要解释显著信号位点如何影响表型 常见的一个解释方法是共定位分析 主流的共定位分析包括 1 GWAS和eQTL共定位 2 GWAS和sQTL共定位 3 GWAS和meQTL共定位 4 GWAS和pQTL共定位 其
  • win7 系统安装图解教程

    链接 http www 360doc com content 10 0720 11 1495415 40258931 shtml
  • 【经典】SpringBoot thymeleaf模板引擎——WEB开发模板引擎

    模板引擎 可以使业务数据和用户界面分离 通过模板引擎自动生成一个HTML文档 简单的说可以理解为 分离数据和界面 简化网页开发 现在主流的模板引擎有Jsp Velocity Beetl Rocker Freemarker thymeleaf
  • ROS学习笔记16:机器人系统建模与仿真

    一 概述 1 机器人系统仿真 是通过计算机对实体机器人系统进行模拟的技术 在 ROS 中 仿真实现涉及的内容主要有三 对机器人建模 URDF 创建仿真环境 Gazebo 以及感知环境 Rviz 等系统性实现 1 仿真优势 低成本 高效 高安
  • Uncaught SyntaxError: Invalid shorthand property initializer at new Function () a

    data options valueField id textField name method get 将method get 等于改为冒号 或者都是一些其他的原因 比如单引号 忘了写逗号
  • Comate: 百度智能云的代码助手

    Comate是什么 Comate是百度智能云推出的一项革命性代码辅助工具 它基于文心大模型的强大理解和推理能力 旨在提高开发者的研发效率 这个全新的工具可以实现代码的快速补齐 自然语言推荐代码和自动查找代码错误等功能 为程序开发提供了全新的
  • vscode安装

    博客 https zhuanlan zhihu com p 106357123 https code visualstudio com download
  • [创业之路-47] :动态股权机制 -2- 多轮融资股权稀释后,大股东保留控制权的常见套路

    正常来说一个蒸蒸日上的公司或者被看好的公司 都要面临融资的问题 融资之后 股权就会发生比较大的变化 多轮融资之后呢 再次引进新的合伙人呢 那时候的股权肯定低于51 甚至低于34 这时候靠什么掌控公司 1 有限合伙平台模式GP VS LP 同
  • windows安装pm2

    pm2是开源的进程管理器 可用于管理您的nodejs项目等 前段时间看到同事使用到此工具 今日特地学习安装使用 安装流程如下 1 确保你电脑安装了npm 可以通过npm v命令查看 npm v 2 安装pm2 命令 npm install
  • 程序员代码打字练习题库

    创建一个新的txt文件 将本文内容全选 粘贴 保存 然后导入金山打字通 即可练习程序员常用词汇 推荐使用金山打字通 英文文章练习 自定义课程 导入txt文件 保存 接下来你就可以联系打字了 path class classpath publ
  • 绕过protected方法的调用(包级共享)

    A类在a包 package a import b B public class A protected void sys System out println A protected sys方法 public static void mai
  • [Activiti 资料]Activiti 画图工具(activiti-designer,actiBPM,activiti-app)

    1 eclipse eclipse的画流程工具 activiti designer 1 1 直接下载Eclipse 或者下载已经安装了activiti designer的eclipse 既然你下载到了 怎么也礼节性的感谢一下哈 链接 htt
  • ENVI入门系列教程---二、图像分析---13. 遥感动态监测

    every blog every motto God helps those who help themselves https blog csdn net weixin 39190382 type blog 0 前言 遥感变化检测就是从不
  • EasyExcel,让excel导入导出更加简单

    EasyExcel EasyExcel是一个基于Java的简单 省内存的读写Excel的开源项目 在尽可能节约内存的情况下支持读写百M的Excel github地址 https github com alibaba easyexcel JA
  • 数据降维算法

    文章目录 效果一览 文章概述 部分源码 参考资料 效果一览 文章概述 数据降维算法 Matlab 基于局部费歇尔判别 LFDA 的分类数据降维可视化 部分源码
  • OpenCV Android以及扩展模块opencv_contrib的编译

    OpenCV和OpenCV contrib模块4 5 x版本的编译 环境准备 Ubuntu 16 04 1 环境变量 export ANDROID HOME work android sdk export ANDROID NDK HOME
  • 【allegro 17.4软件操作保姆级教程一】软件操作环境设置

    个人主页 highman110 作者简介 一名硬件工程师 持续学习 不断记录 保持思考 输出干货内容 目录 1操作环境准备 1 1单位设置 1 2画布面积设置 1 3软件显示设置 1 4布局显示设置 1 5格点设置 1 6大十字光标设置 1
  • 什么场景应该用 MongoDB ?

    月初在云栖社区上发起了一个 MongoDB 使用场景及运维管理问题交流探讨 的技术话题 有近5000人关注了该话题讨论 这里就 MongoDB 的使用场景做个简单的总结 谈谈什么场景该用 MongoDB 很多人比较关心 MongoDB 的适
  • 华为OD机试(JAVA)真题 2023(汽水瓶\随机数\进制转换)

    系列文章目录 文章目录 系列文章目录 前言 一 1 汽水瓶 二 明明的随机数 前言 一 1 汽水瓶 某商店规定 三个空汽水瓶可以换一瓶汽水 允许向老板借空汽水瓶 但是必须要归还 小张手上有n个空汽水瓶 她想知道自己最多可以喝到多少瓶汽水 数