华为机试2022试卷 三道题
1. 最大值 179. 最大数 (leetcode)
给定一组非负整数 nums
,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。
注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数。
输入:
nums = [10,2]
输出:"210"
解法:自定义排序,利用比较传递性
Class Solution{public String largestNumber(int[] nums){int n =nums.length();String[] ss =new String[n];// 转为字符for(int i=0;i<n;i++){ss[i]=""+nums[i];}Arrays.sort(ss,(a,b)-{// 递减顺序String sa=a+b;String sb=b+a;return sb.comapreTo(sa);});// 字符数组拼接StringBuilder buidler =new StringBuilder();for(int i=0;i<ss.length();i++){buider.append(ss[i]);}return builder.toString();}}
2.最少步数
数组最大100个成员 ,从第一个成员,走到数组最后一个成员,使用的最后少步数 第一步 1<= 第一步<len/2; 第二步开始以成员为步数最少步数到达最后一个成员;
例如: 7 5 9 4 2 6 8 3 5 4 3 9 输出 2
从第一个元素a[0]开始跳2步到a[2]=9,接下来跳9步到最后一个元素9.所跳的步数是2
60% 用例:
public class Main2 {//最大100个 ,走到数组最后一个成员,使用的最后少步数//第一步 1<= 第一步<len/2;//第二步开始以成员为步数最少public static void main(String[] args) {Scanner in = new Scanner(System.in);List<Integer> list = new ArrayList<Integer>();String line =in.nextLine();String[] lines =line.split(" ");int[] nums = new int[lines.length];for (int i = 0; i <nums.length ; i++) {nums[i]=Integer.parseInt(lines[i]);}int[] ret = new int[nums.length / 2];for (int i = 1; i < nums.length / 2; i++) {int index = i;//第一步int count =1;while (index < nums.length - 1) {count++;index = index + nums[index];if (index > nums.length - 1) {ret[i] = -1;} else if (index == nums.length - 1) {ret[i] = count;} else {}}}int max=Integer.MIN_VALUE;for (int i = 1; i <ret.length ; i++) {// System.out.println(ret[i]);if(ret[i]>max){max=ret[i];}}if(max==-1){System.out.println(-1);}else{System.out.println(max);}}
}
45. 跳跃游戏 II
难度中等
给你一个非负整数数组 nums
,你最初位于数组的第一个位置。
数组中的每个元素代表你在该位置可以跳跃的最大长度。
你的目标是使用最少的跳跃次数到达数组的最后一个位置。
假设你总是可以到达数组的最后一个位置。
第3题 :骰子翻转
前后左右上下翻转,打印出最后状态:
输入:LR ,左转--> 右转
输出:123456
100%
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;public class Main3 {/*** 初始状态: 123456* 左转 L: 563421--452310* 右转 R:653412--0123456* 前转 F:125643--014532* 后传 B:126534-- 015423* 上转 A:431256--320145* 下转 C:342156--231045***/static int[][] index={{4,5,2,3,1,0},// L{5,4,2,3,0,1},//R{0,1,4,5,3,2},//F{0,1,5,4,2,3},//B{3,2,0,1,4,5},//A{2,3,1,0,4,5}//C};public static void main(String[] args) {Scanner in = new Scanner(System.in);List<Integer> list = new ArrayList<Integer>();String line =in.nextLine();char[] chs =line.toCharArray();int[] num= {1,2,3,4,5,6};for (int i = 0; i <chs.length ; i++) {int[] numtemp=num.clone();if (chs[i]=='L') {int[] change=index[0];for (int j = 0; j <change.length; j++) {num[j]=numtemp[change[j]];}}else if(chs[i]=='R'){int[] change=index[1];for (int j = 0; j <change.length; j++) {num[j]=numtemp[change[j]];}}else if(chs[i]=='F'){int[] change=index[2];for (int j = 0; j <change.length; j++) {num[j]=numtemp[change[j]];}}else if(chs[i]=='B'){int[] change=index[3];for (int j = 0; j <change.length; j++) {num[j]=numtemp[change[j]];}}else if(chs[i]=='A'){int[] change=index[4];for (int j = 0; j <change.length; j++) {num[j]=numtemp[change[j]];}}else if(chs[i]=='C'){int[] change=index[5];for (int j = 0; j <change.length; j++) {num[j]=numtemp[change[j]];}}}StringBuilder builder=new StringBuilder();for (int i = 0; i < num.length; i++) {builder.append(num[i]);}System.out.println(builder.toString());}
}
华为机试2022试卷 三道题相关推荐
- 华为机试2022.4.13:硬件资源分配
第一题:老样子,题目臭长,分数最少. 硬件资源分配 题目描述 有M台服务器,每台服务器有以下属性:编号.CPU核数(1~100).内存.CPU架构(0~8).是否支持NP加速的标识(0,1).然后有一 ...
- 华为机试2022.4.13:分发糖果
第三题:300分,这道题好像判题有问题吧,大家都在反馈.输出-1就是5%. 分发糖果 题目描述 老师给两个同学分糖果,每袋糖果中的数量不完全一样.一袋糖果只能分给一个人,并且一次性全分完必须.两个人分 ...
- 华为机试2022.4.6:天然货仓
第三题,300分,单调栈的考点. 天然货仓 题目描述 有一个天然形成的大坑,为台阶状结构,每个台阶的长度都为1,每个都的值为整数(正整数表示高于地平面,零表示与地平面平齐,负整数表示低于地平面).有一 ...
- 【java华为机试】华为od机试题考试真题
前言综述: 本次od机试考试一共三道题,第一道题和第二道题各100分,第三道题200分.本次考试的答案都是2.5h考试的时候写的,代码写的也许并不好.在考试中还是蛮紧张的,所以写代码的时候注重的是完成 ...
- 2022/7/26华为机试,Q2,上机迷迷糊糊的,搞完突然醒悟,自抱自泣!三道题附带答案
21:52 2022/7/26华为机试三道题附带答案 备注:未ac,华为不难,难的是个人很难进入答题状态! 第一道 给定一个字符串,是工作记录的日志时间,时间为四段格式,AA:BB:CC:DDD 其中 ...
- 【华为机试真题 Python实现】2022年4、5月高频机试题
文章目录 2022年4.5月高频机试题 机试必须要会的函数 输入输出处理 for 循环 通过下标访问元素 直接迭代访问元素 同时访问下标和元素 while 循环 字符ASSIC码转换 进制转换 绝对值 ...
- 【华为机试真题 Python实现】篮球比赛【2022 Q1 Q2 | 200分】
文章目录 前言 题目描述 示例 1 参考代码 前言 <华为机试真题>专栏含牛客网华为专栏.华为面经试题.华为OD机试真题. 如果您在准备华为的面试,期间有想了解的可以私信我,我会尽可能帮您 ...
- 【华为机试真题 Python实现】奥运会排行榜【2022 Q1 | 100分】
文章目录 前言 题目描述 示例 1 参考代码 前言 <华为机试真题>专栏含牛客网华为专栏.华为面经试题.华为OD机试真题. 如果您在准备华为的面试,期间有想了解的可以私信我,我会尽可能帮您 ...
- 【华为机试真题 Python实现】2022年4季度最新机试题
文章目录 2022年4季度最新机试题 机试必须要会的函数 输入输出处理 for 循环 通过下标访问元素 直接迭代访问元素 同时访问下标和元素 while 循环 字符ASSIC码转换 进制转换 绝对值计 ...
最新文章
- Python进程学习笔记-进程创建fork
- 2 通过JNI混合使用Java和C++ ----- 访问数组
- 目标意识应求成大于避败 思考时不要先意识到身不足而自我设限
- java word分词器使用_word分词器使用(java)
- gd动态曲线 php_php中用GD绘制折线图
- linux常用命令--开发调试篇
- 《Essential C++》笔记之(static)静态类成员
- 圆柱与平面接触宽度_好烦!这个建筑高大斜圆柱真难施工!别怕!学会这种工法就不难了...
- [hystar整理]Entity Framework 教程
- css实训内容,实训五DivCSS布局基本.doc
- Android安卓小程序-随机数生成器
- Vue网页录音,js录音mp3
- ajax几种回调函数
- 计算机关闭后桌面文件丢失,win7系统电脑关机重启后桌面文件全部不见了的解决方法...
- windows下解决弹窗广告
- WTL 窗口自绘 (CQsSkinWindowUI)
- python中sklearn.datasets.make_blobs()函数用法
- 快捷餐饮之店家后台OSS文件管理实现
- QT Android wifi自动重连开发
- java api gateway_微服务中的 API 网关(API Gateway)