华为校招练习题解:
本题主要思路就是利用取模取余,字符串拼接,还有就是熟悉java的命令行输入参数。
import java.util.*;
public class Main{
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
String str1 = sc.nextLine();
String str2 = sc.nextLine();
ArrayList<String> res = new ArrayList<>();
int l1=str1.length();
int l2=str2.length();
if(l1 <= 8){
StringBuilder sb = new StringBuilder();
sb.append(str1);
for(int i=0;i<8-l1;i++){
sb.append(0);
}
res.add(sb.toString());
}else{
int div = l1/8;
int mod = l1%8;
for(int i=0;i<div;i++){
res.add(str1.substring(i*8,i*8+8));
}
if(mod!=0){
StringBuilder sb = new StringBuilder();
sb.append(str1.substring(div*8,l1));
for(int i=0;i<8-mod;i++){
sb.append(0);
}
res.add(sb.toString());
}
}
if(l2<=8){
StringBuilder sb = new StringBuilder();
sb.append(str2);
for(int i=0;i<8-l2;i++){
sb.append(0);
}
res.add(sb.toString());
}else{
int div = l2/8;
int mod = l2%8;
for(int i=0;i<div;i++){
res.add(str2.substring(i*8,i*8+8));
}
if(mod!=0){
StringBuilder sb = new StringBuilder();
sb.append(str2.substring(div*8,l2));
for(int i=0;i<8-mod;i++){
sb.append(0);
}
res.add(sb.toString());
}
}
for(String saa:res)
System.out.println(saa);
}
}