牛客华为算法-HJ4 字符串分隔

我爱海鲸 2025-04-17 20:41:28 暂无标签

简介华为OD

字符串分隔_牛客题霸_牛客网

描述

对于给定的由小写字母和数字混合构成的字符串 s ,你需要按每 8 个字符换一行的方式书写它,具体地:
∙ 书写前 8 个字符,换行;
∙ 书写接下来的 8 个字符,换行;
∙ ……
∙ 重复上述过程,直到字符串被完全书写。
特别地,如果最后一行不满 8 个字符,则需要在字符串末尾补充 0 ,直到长度为 8 。

输入描述:

在一行上输入一个长度 1≦length(s)≦100 ,由小写字母和数字混合构成的字符串 s 。

输出描述:

输出若干行,每行输出 8 个字符,代表按题意书写的结果。

示例1

输入:
hellonowcoder
输出:
hellonow
coder000
说明:
在这个样例中,字符串长度为 13 ,因此需要在第二行末尾补充 30

示例2

输入:
0
输出:
00000000
解法一(java):
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String str =  in.nextLine();
        int len = str.length();
        int group = len / 8;
        int more = len % 8;
        for (int i = 0; i < group; i++) {
            String value = str.substring(i*8,i*8+8);
            System.out.println(value);
        }
        if (more > 0) {
            String tmp = str.substring(group * 8);
            int plus = 8 - more;
            for (int i = 0 ; i < plus ; i++) {
                tmp = tmp + 0;
            }
            System.out.println(tmp);
        }
    }
}

思路:拆分字符串,分组字符然后按照8位输出,最后要判断是否有存在的不足8位的字符,然后补0在进行输出。

你好:我的2025