闲的没事,来道编程,嗨嗨~
https://www.luogu.com.cn/problem/P1320
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String first = scanner.next(); // 输入的第一行
List<String> inputList = new ArrayList<>(); // 除了第一行的其他行
inputList.add(first);
int count = first.length(); // 根据第一行字符数确定总的行数
int leftOver = count - 1; // 计算剩余未输入的行数
for(int i = 0;i < leftOver; i++) { // 输入的行数:进行输入
inputList.add(scanner.next());
}
char flag = '0'; // 0 1之间的转换
int result = 0; // 计算 0 1 的个数
/**
* 判断并输出
*/
System.out.print(inputList.size() + " "); // 输出总数
for(int i = 0; i < inputList.size(); i++) {
for (int j = 0; j < inputList.size(); j++) {
if(inputList.get(i).charAt(j) == flag) {
result ++;
}else {
System.out.print(result + " "); // 输出个数
result = 1;
if(flag == '0') {
flag = '1';
}else {
flag = '0';
}
continue;
} // 最后一组 0 或 1 不会输出,要单独判断
if(i == inputList.size() - 1 && j == inputList.size() - 1) {
System.out.print(result);
}
}
}
}
}