版权声明:MZ21G https://blog.csdn.net/qq_35793285/article/details/84780466
解题思路:
找出子串中相同的字符,用一个计数器记录该字符出现的次数即可。若出现次数为1忽略1即可。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int K = scanner.nextInt();
for (int i = 1; i <= K; i++) {
String s = scanner.next();
// 记录字符串第一个字符
char temp = s.charAt(0);
// 计数
int count = 1;
for (int j = 1; j < s.length(); j++) {
if (s.charAt(j) != temp) {
if ( count == 1) {
System.out.print(s.charAt(j - 1));
}
else {
System.out.print(count);
System.out.print(s.charAt(j - 1));
count = 1;
}
temp = s.charAt(j);
}
else {
count++;
}
if (j == s.length()-1) {
if (count == 1) {
System.out.print(s.charAt(j));
}
else {
System.out.print(count);
System.out.print(s.charAt(j - 1));
}
}
}
System.out.println();
}
}
}