解题思路:StringBuilder不断更新字符串,依次比较后赋值
注意事项:注意下标溢出
参考代码:
import java.util.Scanner;
public class Main {
public static void main(String []args){
Scanner scanner=new Scanner(System.in);
String s=scanner.next();
int n=scanner.nextInt();
StringBuilder a=new StringBuilder();
while (n>0){ //n次循环
int l=s.length(); //取长度,用来循环
a.setLength(0); //清空过度字符串
for (int i=0;i<l;i++){ //遍历s
int q=1; //标签
if(i<l-1){ //防止溢出
while (s.charAt(i)==s.charAt(i+1)){ //相等标签+1,循环+1
i++;
q++;
}
a.append(q).append(s.charAt(i));//赋值
}else a.append(q).append(s.charAt(i));
}
s= String.valueOf(a); //强制转换为String
n--;
}
System.out.println(s);
}
}
0.0分
0 人评分
十->二进制转换 (C语言代码)浏览:1443 |
【明明的随机数】 (C++代码)(C++库中有qsort函数直接快排,不用码排序代码hhh)浏览:1115 |
C语言训练-阿姆斯特朗数 (C语言代码)浏览:897 |
不知道哪里错了浏览:1226 |
C语言程序设计教程(第三版)课后习题11.3 (C语言代码)浏览:1059 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:610 |
C语言程序设计教程(第三版)课后习题10.1 (Java代码)浏览:1492 |
C语言程序设计教程(第三版)课后习题6.7 (C语言代码)浏览:548 |
简单的a+b (C语言代码)浏览:600 |
C语言程序设计教程(第三版)课后习题6.2 (C语言代码)浏览:1432 |