题解 | #字符串分隔#

字符串分隔

http://www.nowcoder.com/practice/d9162298cb5a437aad722fccccaae8a7

import java.util.Scanner;

public class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); String str =input.nextLine(); int n = str.length(); // System.out.println(n);

    //判断字符串有几个8的倍数
    int beishu=n/8;
    //判断是否有余数
    int yushu =n%8;
    //减去余数应添加的0个数
    int add0=8-yushu;

    if (yushu!=0&&str.length()<8){       //字符串大小小于8
        yushu=8-str.length();
        add0=8-str.length();
        String str2[] = new String[1];
        str2[0]=str;
        for (int i = 0; i <add0 ; i++) {
            str2[0]=str2[0]+"0";
        }
        System.out.println(str2[0]);

    }else if (yushu==0){               //字符串大小为8的倍数
        String str2[]= new String[beishu];
        for (int i = 0; i <str2.length ; i++) {
            str2[i]="";
        }
        for (int i = 0; i <str2.length; i++) {
            for (int j = i*8; j <i*8+8; j++) {
                str2[i]=str2[i]+str.charAt(j);
            }
        }
        for (int i = 0; i <str2.length ; i++) {
            System.out.println(str2[i]);
        }

    }else {                            //字符串大于8且大小不为8的倍数
        String str2[]= new String[beishu+1];
        for (int i = 0; i <str2.length ; i++) {
            str2[i]="";
        }
        for (int i = 0; i <str2.length-1; i++) {
            for (int j = i*8; j <i*8+8; j++)
                    str2[i] = str2[i] + str.charAt(j);
        }
         //补充剩下的字符
        for (int i = 8*beishu; i <str.length(); i++) {
            str2[str2.length-1]=str2[str2.length-1]+str.charAt(i);
        }
        //添加0
        for (int i = 0; i <add0 ; i++) {
            str2[str2.length-1]=str2[str2.length-1]+"0";
        }

        for (int i = 0; i <str2.length ; i++) {
            System.out.println(str2[i]);
        }

    }




}

}

全部评论

相关推荐

点赞 评论 收藏
分享
Southyeung:我说一下我的看法(有冒犯实属抱歉):(1)简历不太美观,给我一种看都不想看的感觉,感觉字体还是排版问题;(2)numpy就一个基础包,机器学习算法是什么鬼?我感觉你把svm那些写上去都要好一点。(2)课程不要写,没人看,换成获奖经历;(3)项目太少了,至少2-3个,是在不行把网上学习的也写上去。
点赞 评论 收藏
分享
24分钟1.自我介绍2.黑盒测试用例设计方法3.运用刚才的测试方法对手机端淘宝购物车结算页面进行测试4.测试流程5.需求文档没有标明边界值,怎么确定边界值,确定边界值后怎么测6.你们公司自动化测试是测业务主流程还是新需求反问:不足之处答:问答问题前思考3s再答,针对提问再答
一笑而过2222:边:边界值分析法(处理输入边界) 类:等价类划分法(划分有效 / 无效输入) 定:判定表法(多条件组合的逻辑判定) 因:因果图法(分析输入输出的因果关系) 迁:状态迁移法(覆盖系统状态转换路径) 场:场景法(模拟端到端业务流程) 正:正交试验法(多因素组合的测试优化) 错:错误推测法(基于经验推测潜在漏洞) 记忆逻辑链(按测试场景优先级排序) 先处理明确输入:边界值 + 等价类(边类) 再处理条件组合:判定表 + 因果图(定因) 接着处理状态与流程:状态迁移 + 场景法(迁场) 最后优化多因素与补漏:正交试验 + 错误推测(正错)
查看6道真题和解析
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务