华为OJ平台——字符串分隔
题目描述:
连续输入字符串,请按长度为8拆分每个字符创 后输出到新的字符串数组;
长度不是8整数倍的字符串请在后面补数字0,空字符串不处理
输入
连续输入字符串(输入两次,每个字符长长度小于100)
输出
输出到长度为8,的新字符串数组
样例输入
abc
123456789
样例输出
abc00000
12345678
90000000
思路:
都是直接处理,没有具体的方法而言
注意点:
华为的OJ平台的输入输出有点坑,好多次的程序都在这里出问题,在Eclipse上运行的结果没问题,然后在OJ上就是编译出错或者格式错误什么的
本题中输入是以换行符来表示一个字符串的输入结束,输出是以每8个一组为一行输出
import java.util.Scanner; /**
* 连续输入字符串,请按长度为8拆分每个字符创 后输出到新的字符串数组;
* 长度不是8整数倍的字符串请在后面补数字0,空字符串不处理
* 输入
* 连续输入字符串(输入两次,每个字符长长度小于100)
* 输出
* 输出到长度为8,的新字符串数组
* 样例输入
* abc
* 123456789
* 样例输出
* abc00000
* 12345678
* 90000000
*
*/
public class StringSplit { public static void main(String[] args) {
//读取输入字符串
String [] strs = new String [2] ;
Scanner cin = new Scanner(System.in) ;
strs[0] = cin.nextLine() ;
strs[1] = cin.nextLine() ;
cin.close(); String temp ;
int sub = 0 ; //循环处理两个字符串
for(int i = 0 ; i < 2 ; i++ ){
//判断是否为空串(字符串首尾去除空格后判断长度是否为0),如果为空串则不处理
if(strs[i].trim().isEmpty()){
continue ;
}
temp = strs[i] ;
//每8个一组进行处理
for(int j = 0 ; j < temp.length() ; j = j + 8){
//判断 j 之后是否还有8个字符
if(j+8 < temp.length()){
// j 之后的长度大于8
System.out.println(temp.substring(j,j+8)) ;
}else if(j+8 == temp.length()){
// j 之后的长度等于8,即刚好是最后一个组,无需加0
System.out.println(temp.substring(j)) ;
}else{
// j 之后的长度小于8,后面需要加(j+8-temp.length())个 0
System.out.print(temp.substring(j)) ;
sub = j+8 - temp.length() ;
while(sub != 0){
System.out.print( "0") ;
sub-- ;
}
System.out.println();
}
}
} } }
华为OJ平台——字符串分隔的更多相关文章
- 华为OJ平台——字符串通配符
题目描述: 在计算机中,通配符一种特殊语法,广泛应用于文件搜索.数据库.正则表达式等领域.现要求各位实现字符串通配符的算法.要求:实现如下2个通配符: *:匹配0个或以上的字符(字符由英文字母和数字0 ...
- 华为OJ平台——输出最小的k个数
输入n个整数,输出其中最小的k个. 详细描述: 接口说明 原型: bool GetMinK(unsignedint uiInputNum, int *pInputArray, unsignedint ...
- 华为OJ平台——矩阵乘法
题目描述: 如果A是个x行y列的矩阵,B是个y行z列的矩阵,把A和B相乘,其结果将是另一个x行z列的矩阵C. 输入: 1.第一个矩阵的行数 2.第一个矩阵的列数(也是第二个矩阵的行数) 3.第二个矩阵 ...
- 华为oj之字符串分割
题目: 字符串分隔 热度指数:6139 时间限制:1秒 空间限制:32768K 本题知识点: 字符串 题目描述 •连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组: •连续输入字符串, ...
- 华为OJ平台——统计字符串中的大写字母
题目描述: 统计字符串中的大写字母的个数 输入: 一行字符串 输出: 字符串中大写字母的个数(当空串时输出0) 思路: 这一题很简单,直接判断字符串中的每一个字符即可,唯一要注意的一点是输入的字符串可 ...
- 华为OJ平台——计算字符串的相似度
题目描述: 对于不同的字符串,我们希望能有办法判断相似程度,我们定义了一套操作方法来把两个不相同的字符串变得相同,具体的操作方法如下: 1 修改一个字符,如把“a”替换为“b”. 2 增加一个字符,如 ...
- 华为OJ平台——密码强度等级
题目描述: 密码按如下规则进行计分,并根据不同的得分为密码进行安全等级划分. 一.密码长度: 5 分: 小于等于4 个字符 10 分: 5 到7 字符 25 分: 大于等于8 个字符 二.字母: 0 ...
- 华为OJ平台——字符串匹配
题目描述: 判断短字符串中的所有字符是否在长字符串中全部出现 输入: 输入两个字符串. 第一个为短字符,第二个为长字符 输出: true - 表示短字符串中所有字符均在长字符串中出现 false - ...
- 华为OJ平台——整形数组合并
题目描述: 将两个整型数组按照升序合并,并且过滤掉重复数组元素 输入: 输入说明,按下列顺序输入: 1 输入第一个数组的个数 2 输入第一个数组的数值 3 输入第二个数组的个数 4 输入第二个数组的数 ...
随机推荐
- 【MySQL】insert批量插入优化方案
对于一些数据量较大的系统,数据库面临的问题除了查询效率低下,还有就是数据入库时间长.特别像报表系统,每天花费在数据导入上的时间可能会长达几个小时或十几个小时之久.因此,优化数据库插入性能是很有意义的. ...
- SQL Server 2012 批量重建索引
关于索引的概念可以看看宋大牛的博客 T-SQL查询高级—SQL Server索引中的碎片和填充因子 整个数据库的索引很多,索引碎片多了,不可能一个个的去重建,都是重复性的工作,所以索性写了个存储过程, ...
- mssql查询某个值存在某个表里的哪个字段的值里面
第一步:创建 查询某个值存在某个表里的哪个字段的值里面 的存储过程 create proc spFind_Column_In_DB ( @type int,--类型:1为文字类型.2为数值类型 )-- ...
- postgresql plpythonu例子
以下代码仅作为参考之用 select md5, crc32, record->'UserModerAnalysis'->'base_info'->'file_malware' as ...
- 手势识别(一)--手势基本概念和ChaLearn Gesture Challenge
以下转自: http://blog.csdn.net/qq1175421841/article/details/50312565 像点击(clicks)是GUI平台的核心,轻点(taps)是触摸平台的 ...
- 转--Invalidate和postInvalidate的更新view区别
Android中实现view的更新有两组方法,一组是invalidate,另一组是postInvalidate,其中前者是在UI线程自身中使用,而后者在非UI线程中使用. Android提供了Inva ...
- TNT平台
1, TNT平台 本词条缺少信息栏.名片图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧! TNT平台中的开发平台是基于微软Jupiter平台的快速开发工具,开发者可以通过界面属性设定的方法来 ...
- mongodb csv 文件导入数据库,删除特定字段
1. 导入数据库 mongoimport -h host_ip -p port -d db_name -c collection_name --fields name1,name2,name3,nam ...
- 解决insmod: error inserting 'hello.ko': -1 Invalid module format
编译自己的内核模块后,insmod出现error:error inserting 'hello.ko': -1 Invalid module format 出现这种情况的原因是因为Makefile种使 ...
- 向sqlserver插入二进制数据(比如图片)
sqlserver插入二进制数据 偶然在sqlteam看到了,真是够绝,这都想得出来,很便捷的一个方式(只适用于SQL SERVER 2005+),代码如下: CREATE TABLE myTable ...