笔试是在牛客网上进行的要求开启摄像头并且共享屏幕
菜鸡如我只AC了第一题-第三题AC了差不多一半
第一题
输入:
第一行输入整数n;接下来输入n行字符串
输出:
将每个字符串拆分成8个字符的子字符串,不足八个(8的倍数)用0补齐,最后按照 字典序进行输出/字符串之间用空格隔开;
备注:最开始建立了两个函数--后来一直报错--直接将两个函数编到了内部;后来发现是后面循环中j写成了i---非常尴尬///
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String start = sc.nextLine();
//System.out.println(start);
String[] strArr = start.split(" ");
ArrayList<String> list = new ArrayList<>();
System.out.println(Arrays.toString(strArr) + "1");
//用方法对接收到的字符串数组进行改造
for (int i = 1; i < strArr.length; i++) {
int diff1 = strArr[i].length() % 8;
int diff = 8 - diff1;
while (diff > 0 && diff < 8) {
strArr[i] = strArr[i] + "0";
diff--;
}
}
//将字符串进行分割之后放入到list中
for (int i = 1; i < strArr.length; i++) {
for (int j = 0; j < strArr[i].length(); j += 8) {
list.add(strArr[i].substring(j, j + 8));
}
}
//对list中的字符串进行排序
Collections.sort(list);
//按照规矩进行输出
for (int k = 0; k < list.size(); k++) {
if (k != list.size() - 1) {
System.out.print(list.get(k));
System.out.print(" ");
} else {
System.out.print(list.get(k));
}
}
}
}