华为OD机试 - 秘钥格式化 - 字符串处理(Java 2023 B卷 100分)

news/2024/7/20 19:03:01 标签: 华为od, java, python, 双指针

在这里插入图片描述

目录

    • 专栏导读
    • 一、题目描述
    • 二、输入描述
    • 三、输出描述
    • 四、解题思路
    • 五、Java算法源码
    • 六、效果展示
      • 1、输入
      • 2、输出
      • 3、说明

华为OD机试 2023B卷题库疯狂收录中,刷题点这里

专栏导读

本专栏收录于《华为OD机试(JAVA)真题(A卷+B卷)》。

刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释、样例测试,发现新题目,随时更新,全天CSDN在线答疑。

一、题目描述

给定一个非空字符串 S,其被 N 个’-‘分隔成 N+1 的子串,给定正整数 K,要求除第一个子串外,其余的串每 K 个用’-‘分隔,并将小写字母转换为大写。

二、输入描述

正整数 K 和‘-’分割的字符串。

如:
2
25G3C-abc-d

三、输出描述

转换后的字符串。

四、解题思路

给定一个非空字符串 S,其被 N 个’-‘分隔成 N+1 的子串,给定正整数 K,要求除第一个子串外,其余的串每 K 个用’-‘分隔,并将小写字母转换为大写。

五、Java算法源码

java">package com.guor.od;

import java.util.*;

public class OdTest01 {

    /**
     * 秘钥格式化
     * <p>
     * 给定一个非空字符串 S,其被 N 个’-‘分隔成 N+1 的子串,
     * 给定正整数 K,要求除第一个子串外,其余的串每 K 个用’-‘分隔,并将小写字母转换为大写。
     */
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        // 给定一个非空字符串 S
        String S = scanner.nextLine();
        // 给定正整数 K
        int K = Integer.parseInt(scanner.nextLine());
        String[] arr = S.split("-");
        StringBuilder builder = new StringBuilder();
        for (int i = 1; i < arr.length; i++) {
            // 将小写字母转换为大写
            builder.append(arr[i].toUpperCase());
        }

        // 转换后的字符串
        StringBuilder transferBuilder = new StringBuilder();
        transferBuilder.append(arr[0]);
        for (int i = 0; i < builder.length(); i++) {
            // 每 K 个用’-‘分隔
            if (i % K == 0) {
                transferBuilder.append("-");
            }
            transferBuilder.append(builder.charAt(i));
        }
        System.out.println(transferBuilder);
    }
}

六、效果展示

1、输入

nezha-study-java
3

2、输出

nezha-STU-DYJ-AVA

3、说明

在这里插入图片描述


🏆下一篇:华为OD机试真题 Java 实现【简易内存池】【2023 B卷 200分 考生抽中题】

🏆本文收录于,华为OD机试(JAVA)真题(A卷+B卷)

刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释、样例测试,发现新题目,随时更新,全天CSDN在线答疑。

在这里插入图片描述


http://www.niftyadmin.cn/n/4955482.html

相关文章

漏洞指北-VulFocus靶场专栏-初级02

漏洞指北-VulFocus靶场02-初级 初级005 &#x1f338;phpunit 远程代码执行 (CVE-2017-9841)&#x1f338;step1&#xff1a;进入漏洞页step2&#xff1a; burpsuite 抓包,等待请求页&#xff0c;获得flag 初级006 &#x1f338;splunk 信息泄露 &#xff08;CVE-2018-11409&am…

漏洞指北-VulFocus靶场专栏-初级01

漏洞指北-VulFocus靶场专栏-初级 初级001 &#x1f338;海洋CMS代码执行&#xff08;CNVD-2020-22721&#x1f338;step1&#xff1a;进入后台页面 账号密码&#xff1a;admin amdinstep2&#xff1a;点击系统&#xff0c;点击后台IP安全设置,关闭step3 启动burpsuite&#xff…

免费开源使用的几款红黑网络流量工具,自动化的多功能网络侦查工具、超级关键词URL采集工具、Burpsuite被动扫描流量转发插件

免费开源使用的几款红黑网络流量工具&#xff0c;自动化的多功能网络侦查工具、超级关键词URL采集工具、Burpsuite被动扫描流量转发插件。 #################### 免责声明&#xff1a;工具本身并无好坏&#xff0c;希望大家以遵守《网络安全法》相关法律为前提来使用该工具&am…

手写Promise-then方法的设计

then方法的设计 实现then方法回调执行顺序 实现then方法 then(onFulFilled,onRejected){this.onFulFilled onFulFilled;this.onRejected onRejected;}回调执行顺序 再执行resolve的时候执行then方法回调&#xff0c;会存在一个问题&#xff0c;无法拿到回调方法的&#xff0…

2022年国考行政执法卷-判断推理

去掉重复题 例题 例题 例题 例题 例题 例题 例题 例题 例题 例题 类比推理 例题 例题 例题 例题 例题 例题

14.磁盘的管理

第四章 文件管理 14.磁盘的管理 自举程序比较复杂&#xff0c;所以无法保证自举程序相关的数据永远不改变&#xff0c;这个问题该如何解决&#xff1f; 自举装入程序的复杂度不高&#xff0c;很小&#xff0c;所以可以保证自举装入程序是不会出错的&#xff0c;不需要更改的&…

自动驾驶TPM技术杂谈 ———— 汽车事件数据记录系统

文章目录 介绍术语定义技术要求碰撞事件要求触发阈值锁定条件碰撞事件起点碰撞事件终点碰撞事件持续时间 数据记录要求记录功能要求存储介质EDR触发要求存储事件次数要求存储覆盖机制要求断电存储要求 数据提取要求总体要求端口要求数据提取协议要求11位CAN标识符读取数据功能寻…

docker 部署总结

1.docker // 安装必要工具 yum install -y yum-utils device-mapper-persistent-data lvm2 // 设置yum源 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo //下载docker yum install -y docker-ce //启动docker systemctl …