21:52 2022/7/26华为机试三道题附带答案

备注:未ac,华为不难,难的是个人很难进入答题状态!

第一道

给定一个字符串,是工作记录的日志时间,时间为四段格式,AA:BB:CC:DDD
其中AA为0-24,BB为0-24,CC为0-24,DDD为0-999,可能由0填充,相同时间按照记录排序,否则按照时间升序!

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;class preDealString implements Comparable<preDealString> {String line;String lineNext;public String getLine() {return line;}public String getLineNext() {return lineNext;}public preDealString(String string) {// 构建String[] stringArray = string.split(":");int AA = Integer.parseInt(stringArray[0]);int BB = Integer.parseInt(stringArray[1]);int CC = Integer.parseInt(stringArray[2]);int DD = Integer.parseInt(stringArray[3]);this.line = string;this.lineNext = "" + AA + BB + CC + DD;}public int compareTo(preDealString n) {return lineNext.compareTo(n.lineNext);}
}public class Main {public static void main(String[] args) throws IOException {BufferedReader br = new BufferedReader(new InputStreamReader(System.in));// 时间格式排序 AA:BB:CC:DDD/*1:04:5:001:04:5:0002:04:5:0*//*list.add(new preDealString("2:04:5:0"));list.add(new preDealString("1:04:5:0"));list.add(new preDealString("01:04:5:000"));*/int nums = Integer.parseInt(br.readLine());List<preDealString> list = new ArrayList<preDealString>();for (int i = 0; i < nums; i++) {String temp = br.readLine();list.add(new preDealString(temp));}//控制台显示Collections.sort(list);for (preDealString s : list) {System.out.println(s.getLine());}}
}

第二道

给三个矩阵,且矩阵面积交集,未有交集返回0.

1 6 4 4
3 5 3 4
0 3 7 3返回2
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;public class Main {public static void main(String[] args) throws IOException {// 三个左上角最大列    右上角最小列://上顶 最小行   下底最大行.// 1 6 4 4// 3 5 3 4// 0 3 7 3// 构建完整的点// 列号 行号 列+ 行+BufferedReader br = new BufferedReader(new InputStreamReader(System.in));String[] string1 = br.readLine().split(" ");String[] string2 = br.readLine().split(" ");String[] string3 = br.readLine().split(" ");int[] arr1 = new int[4];int[] arr2 = new int[4];int[] arr3 = new int[4];for (int i = 0; i < 4; i++) {arr1[i] = Integer.parseInt(string1[i]);arr2[i] = Integer.parseInt(string2[i]);arr3[i] = Integer.parseInt(string3[i]);}int colMax = Math.max(Math.max(arr1[0], arr2[0]), arr3[0]);int colMin = Math.min(Math.min(arr1[0] + arr1[2], arr2[0] + arr2[2]),arr3[0] + arr3[2]);int minRow = Math.min(Math.min(arr1[1], arr2[2]), arr3[3]);int maxRow = Math.max(Math.max(arr1[1] + arr1[3], arr2[1] + arr2[3]),arr3[1] + arr3[3]);int area = (colMin - colMax) * (minRow - maxRow);area = area > 0 ? area : 0;System.out.println(area);}
}

第三道

书籍堆叠,需要长宽大于上面的,不得旋转,求最大的堆叠数.

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;public class Main {public static void main(String[] args) throws IOException {BufferedReader br = new BufferedReader(new InputStreamReader(System.in));// [[20,10],[8,9][4,3]],堆叠书籍!// 抽取数值,构建数组.char[] lineChar = br.readLine().toCharArray();// char[] lineChar = "[[20,10],[8,9],[4,3]]".toCharArray();StringBuilder sb = new StringBuilder();for (int i = 0; i < lineChar.length; i++) {if (lineChar[i] == '[' || lineChar[i] == ']') continue;else sb.append(lineChar[i]);}String[] nextArray = sb.toString().split(",");int length = nextArray.length / 2;int[] index0 = new int[length];int[] index1 = new int[length];// 反转且分为两个数组.int index0_0 = 0, index1_1 = 0;for (int i = nextArray.length - 1, j = 0; i >= 0; i--, j++) { //5 4 3 2 1 0if (i % 2 == 0) index0[index0_0++] = Integer.parseInt(nextArray[i]);else index1[index1_1++] = Integer.parseInt(nextArray[i]);}int[] dp = new int[index0.length];dp[0] = 1;int max = 0;for (int i = 1; i < index0.length; i++) {for (int j = 0; j < i; j++) {// 转移if (index0[i] > index0[j] && index1[i] > index1[j] && dp[i] < dp[j] + 1) {dp[i] = dp[j] + 1;max = Math.max(max, dp[i]);}}}System.out.println(max);}
}

2022/7/26华为机试,Q2,上机迷迷糊糊的,搞完突然醒悟,自抱自泣!三道题附带答案相关推荐

  1. 【华为机试真题 Python实现】篮球比赛【2022 Q1 Q2 | 200分】

    文章目录 前言 题目描述 示例 1 参考代码 前言 <华为机试真题>专栏含牛客网华为专栏.华为面经试题.华为OD机试真题. 如果您在准备华为的面试,期间有想了解的可以私信我,我会尽可能帮您 ...

  2. 【华为机试真题详解】数大雁【2022 Q2 | 100分】

    文章目录 前言 详解试题 1419. 数青蛙 华为机试题. 数大雁 题目解析 数青蛙代码实现 数大雁不考虑叫声不完整的情况 数大雁考虑叫声不完整的情况 前言 <华为机试真题详解>专栏含牛客 ...

  3. 【华为机试真题 Python实现】热点网站统计【2022 Q1 Q2 | 100分】

    文章目录 前言 题目描述 示例 1 参考代码 前言 <华为机试真题>专栏含牛客网华为专栏.华为面经试题.华为OD机试真题. 如果您在准备华为的面试,期间有想了解的可以私信我,我会尽可能帮您 ...

  4. 【华为机试真题 Python实现】导师请吃火锅【2022 Q1 Q2 |200分】

    文章目录 前言 题目描述 示例 1 参考代码 前言 <华为机试真题>专栏含牛客网华为专栏.华为面经试题.华为OD机试真题. 如果您在准备华为的面试,期间有想了解的可以私信我,我会尽可能帮您 ...

  5. 【华为机试真题 Python实现】最大括号深度【2022 Q2 | 100分】

    文章目录 前言 题目描述 示例 1 参考代码 前言 <华为机试真题>专栏含牛客网华为专栏.华为面经试题.华为OD机试真题. 如果您在准备华为的面试,期间有想了解的可以私信我,我会尽可能帮您 ...

  6. 【华为机试真题 Python实现】圆桌队列【2022 Q2 | 200分】

    文章目录 前言 题目描述 示例 1 参考代码 前言 <华为机试真题>专栏含牛客网华为专栏.华为面经试题.华为OD机试真题. 如果您在准备华为的面试,期间有想了解的可以私信我,我会尽可能帮您 ...

  7. 【华为机试真题 Python实现】考古学家【2022 Q2 | 100分】

    文章目录 前言 题目描述 示例 1 参考代码 前言 <华为机试真题>专栏含牛客网华为专栏.华为面经试题.华为OD机试真题. 如果您在准备华为的面试,期间有想了解的可以私信我,我会尽可能帮您 ...

  8. 【华为机试真题详解】判断字符串子序列【2022 Q1 Q2 | 200分】

    文章目录 前言 题目描述 示例 1 题目解析 参考代码 前言 <华为机试真题详解>专栏含牛客网华为专栏.华为面经试题.华为OD机试真题. 如果您在准备华为的面试,期间有想了解的可以私信我, ...

  9. 【华为机试真题 Python实现】路灯问题【2022 Q1 Q2 |200分】

    文章目录 前言 题目描述 示例 1 示例 2 示例 3 示例 4 参考代码 前言 <华为机试真题>专栏含牛客网华为专栏.华为面经试题.华为OD机试真题. 如果您在准备华为的面试,期间有想了 ...

最新文章

  1. C++ auto 关键字的使用
  2. 控制ftp访问时间段
  3. 单核7:全景闹钟和单核工作法
  4. 多用户操作git“远程仓库“(本地)
  5. if test 多条件_秒懂Python编程中的if __name__ == #39;main#39; 作用和原理
  6. html5退出全屏触发的方法_在实战中学??typescript - 实现浏览器全屏(100行)
  7. source insight 4.0 无法同步文件问题
  8. 最大似然估计_R初等统计分析(一)——概率分布、最大似然估计
  9. Smartfox Server 2x 在 CentOS6.3 上的搭建
  10. Android 在button 上添加imageview不显示
  11. Linux:写一个简单的服务器
  12. 袋鼠天气 v1.1 发布:增加下拉刷新获取实时天气数据
  13. c标签判断true false jsp_JSP 标准标签库(JSTL) | 菜鸟教程
  14. 小程序文档整理之 -- API(开放接口)
  15. ubuntu20.04合并拆分pdf
  16. java表白_java实现七夕表白神器
  17. 天价高端茶礼是真文化还是智商税?
  18. 2019广东工业智造创新大赛【赛场二】感谢拼命的自己
  19. Fast-Livo:快速紧耦合稀疏-DirectLiDAR-惯性视觉里程计
  20. Linux TCP在3.18内核引入的一个慢启动相关的问题或者说Bug

热门文章

  1. 这几天我遇到了一系列的问题~【关于解决问题步骤,关于自学,关于学习的思考】
  2. 现货白银投资技巧实战教程
  3. 鸿蒙系统在华为应用商店,华为P40或用鸿蒙系统 有自己的应用市场和移动服务...
  4. python 获取窗口句柄 模拟 点击按钮,Python获取浏览器窗口句柄过程解析
  5. 黑苹果NVIDIA显卡驱动程序【WebDriver-378.05.05.25f11 +支持 macOS 10.12.6 Sierra (16G1618)版本】
  6. oracle列转行查询,Oracle列转行函数Listagg以及pivot查询示例
  7. oracle sql列转行_ORACLE 列转行和行转列的SQL和函数
  8. 三年外包终上岸,这些公司能不去就不去,这回阿里P6+稳了啊
  9. 计算机常用函数名称,计算机常用函数表.docx
  10. 【bzoj 3309】 DZY Loves Math