华为OD机试-报文转换 只有20%通过率。但是没没找到未通过原因

2023-11-09

机试题只有AC20%,但是目前没看到原因
我看有人说是16进制的原因,但是输出也是16进制,是不用转换的吧。因为我全部都是用的String,不存在说数据被我转成了10进制

报文转义功能

报文中如果出现0x0A,转义成两个字节0x12 0x34,如果出现0x0B,转义成两个字节0xAB,0xCD,其他报文保持不变
输出的第一个字节为报文长度(包含它自己)
就是如果输入A就转义成12 34,如果输入B就转义成AB CD

package com.java.huaweiexam;

import java.util.Scanner;

/**
 * @author dengtiantian
 */
public class Test2 {
    static void function(String str){
        str = str.toUpperCase();
        if (str.length()==0){
            return;
        }
        String[] strings = str.split(" ");
        if (Integer.parseInt(strings[0])>127){
            return;
        }
        StringBuilder sb = new StringBuilder();
        int count = 0;
        for (int i = 1; i<Integer.parseInt(strings[0]);i++){
            if ("A".equals(strings[i].trim()) || "0x0A".equals(strings[i].trim()) || "0A".equals(strings[i].trim())){
                count = count+2;
                sb.append("12").append(" ").append("34").append(" ");
            }else if ("B".equals(strings[i].trim())  ||"0x0B".equals(strings[i].trim()) || "0B".equals(strings[i].trim())){
                count = count+4;
                sb.append("AB").append(" ").append("CD").append(" ");
            }else {
                count++;
                sb.append(strings[i]).append(" ");
            }
        }
        String temp = String.valueOf(count+1) +" "+new String(sb);
        temp.trim();
        System.out.println(temp.toUpperCase());


    }
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while (sc.hasNext()){
            String str = sc.nextLine();
            function(str);
        }
    }
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

华为OD机试-报文转换 只有20%通过率。但是没没找到未通过原因 的相关文章

  • Unity3D之UI按键绑定事件(六)

    六 通过unity系统自带接口和观察者模式绑定按键事件 UI UGUI 如何判断UI元素被点击时是鼠标哪个按键 五 中我们可以根据eventData pointerId来监听是我们按下的是鼠标左键还是右键 通过前面几部分学习我们已经实现对U

随机推荐

  • 字符设备驱动之异步通知

    一 应用程序主动的去查询或 read 1 查询方式 很占资源 2 中断机制 虽然有休眠 但在没有按键按下时 read 3 poll 机制 指定超时时间 以上都是 应用程序 主动去读或查询 二 异步通知 有按键按下了 驱动程序来提醒 触发 应
  • 18.函数subplot2grid():让子区跨越固定的网格布局

    文章目录 1 subplot2grid 的使用方法 2 模块gridspec中的类GridSpec的使用方法 subplot2grid 函数的rowspan和colspan参数可以让子区跨越固定的网格布局的多个行和列 实现不同的子区布局 比
  • 韩顺平 2021零基础学Java 学习笔记(1)(自用)

    目录 第 2 章 Java 概述 第 3 章 变量 第 4 章 运算符 第 5 章 程序控制结构 第 6 章 数组 排序和查找 第 7 章 面向对象编程 基础部分 第 8 章 面向对象编程 中级部分 第 2 章 Java 概述 2 1 Ja
  • Vue3 如何实现一个全局搜索框

    前言 自从学习 vue 以来 就对 vue 官网全局的 command K 调出全局关键词搜索这个功能心心念念 恰好最近项目也是需要实现一个全局搜索的功能 也正好可以正大光明的带薪学习这个功能的思路 网上的教程水平参差不齐 而恰好之前的项目
  • C++数组【修订】

    C 数组 修订 C 数组 array 是一种顺序容器sequence container 是由单一数据类型元素组成的一个有序集合 数组是用来存储一系列数据 但它往往被认为是一系列相同类型的变量 对数组元素的访问是通过下标 subscript
  • 高精度24bit 模数转化 AD7767芯片 使用总结

    转载请标明是引用于 http blog csdn net chenyujing1234 欢迎大家提出意见 一起讨论 PDF资料请大家网上搜索 环境 上位机 MIPS WCE6 0 1 芯片功能介绍 它是一个高精度的24bit采样SAR模数转
  • 读取pytorch.bin权重文件解读

    读取pytorch bin的权重文件实现的函数在modeling utils py之中 print load Pytorch model if state dict is None try state dict torch load res
  • 【Python】‘builtin_function_or_method‘ object is not subscriptable 错误

    Python数组初始化报错 括号问题 错误方式 inArr array ffMiles percentTags iceCream 正确方式 inArr array ffMiles percentTags iceCream
  • openjudge数据结构练习集 字符栈的实现

    字符栈的实现 查看 提交 统计 提问 总时间限制 1000ms 内存限制 1024kB 描述 本程序定义了一个有头结点的链栈 栈的数据元素类型是字符型 并实现了它的创建 入栈 出栈 获取栈顶元素 判断栈是否为空 销毁栈等操作 为了测试这些操
  • 千万不要这样使用Arrays.asList !

    作者 flyhero 微信公众号 码上实战 ID Push Code 使用Arrays asList 的原因无非是想将数组或一些元素转为集合 而你得到的集合并不一定是你想要的那个集合 而一开始asList的设计时用于打印数组而设计的 但jd
  • IDEA 查找某个 jar 包是如何被引入的

    IDEA 查找某个 jar 包是如何被引入的 方法一 我们借助 IDEA 的 maven 工具 在 maven 栏右键项目模块 选择 show Dependencies或 Ctrl Shift Alt U 这时候会展示当前模块的 jar 包
  • RT-Thread 实时操作系统(一)

    视频播放地址 https www bilibili com video BV1Cb4y1m7W5 p 2 vd source b91967c499b23106586d7aa35af46413 0 学习路线 1 RT Thread简介 2 R
  • u3d 2D Animator AnimationClip复用方案

    新做了个2D游戏 类似小时候红白机的 热血格斗 比较菜 人物2d动画就用的Animator 碰撞块的方法做的 移动 攻击等做成Clip然后通过Animator控制 发现一个人物一个Animator N个片断 然后要制作10多个不同的人物 但
  • discuz密码找回:忘记管理员密码,忘记UCENTER创始人密码

    discuz站点 忘记管理员密码或忘记ucenter管理员密码怎么办 discuz管理员密码修改 第一步进入uc后台 域名 uc server 如果uc密码忘记请继续往下看 找到用户管理里编辑管理员账号 第二步把想改的密码输入进去直接提交就
  • .pgr照片文件解析,C++与Java存储数据差别大小端模式

    1 pgr是什么 pgr文件是二进制的图像文件 可以用普通的文本文件打开 或者查看十六进制的文本信息 读取需要了解 非常重要 基本数据类型的大小端存储模式 表头Header 详细信息可参考 http www powergrep com ma
  • 替换jar包内的class文件

    前提 项目几年没有更新 不确定手头上的代码是否最新内容 只能通过替换class文件进行更新 1 从本地项目中拿到class文件 2 复制jar包到文件夹中 打开cmd窗口 创建对应jar包下的文件夹 把本地项目的class文件放进去 例 m
  • 曾有一个人,爱我如生命(3)

    第十一章 一切都已结束 不再藕断丝连 我最后一次拥抱你的双膝 说出令人心碎的话语 一切都已结束 回答我已听见 我不愿再一次将自己欺骗 也许 往事终会将我遗忘 我此生与爱再也无缘 普希金 往事 那些天我不知道是怎么熬过来的 什么事都做不下去
  • golang 命令行cobra妙用

    为什么使用命令行 大型项目中少不了数据升级 如果采用web服务 一来不够安全 二来数据量大的时候也会出超时的情况 这时使用命令行是比较合适的方式了 命令行中的MVC web项目一般采用MVC模式 对于命令行有吗 对于命令行则有command
  • Unity——Transform类

    transform position 基础知识 Transform作为Unity中游戏对象最为重要的组件 位置 作为Transfrom组件的一个属性 具有同等重要的地位 Transform组件下有两个 位置 属性 position 指的是游
  • 华为OD机试-报文转换 只有20%通过率。但是没没找到未通过原因

    机试题只有AC20 但是目前没看到原因 我看有人说是16进制的原因 但是输出也是16进制 是不用转换的吧 因为我全部都是用的String 不存在说数据被我转成了10进制 报文转义功能 报文中如果出现0x0A 转义成两个字节0x12 0x34