题解 | #动态字符串#

动态字符串

https://www.nowcoder.com/practice/e2c51a6f126b41f9be403376c7adea15

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String str = scanner.next();

        //write your code here......
        // 获取字符串的长度
        int len = str.length();
        // 添加逗号的次数
        int num = len / 3;
        // 开头剩下多少个开始插入逗号
        int mod = len % 3;
        String newStr = "";
        // 用来标记开头添加了逗号
        boolean isFlag = false;
        // 如果余数为0
        if (mod == 0) {
            isFlag = true;
        }
        // 用来记录添加逗号的次数
        int num1 = 0;
        for (int i = 1; i <= len; i++) {
            char c = str.charAt(i - 1);
            newStr += c;
            // 开头之后添加逗号
            if (isFlag && ((i - mod) % 3 == 0) && num1 < num) {
                newStr += ",";
                num1++;
            }
            // 开头添加逗号,余数为0则开头不需要添加逗号
            if (i == mod) {
                newStr += ",";
                isFlag = true;
                num1++;
            }
        }
        System.out.println(newStr);
    }
}

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务