題目:
從X星截獲一份電碼,是一些數字,如下:
13
1113
3113
132113
1113122113
….
YY博士經徹夜研究,發現了規律:
第一行的數字随便是什麼,以後每一行都是對上一行“讀出來”
比如第2行,是對第1行的描述,意思是:1個1,1個3,是以是:1113
第3行,意思是:3個1,1個3,是以是:3113
請你編寫一個程式,可以從初始數字開始,連續進行這樣的變換。
資料格式:
第一行輸入一個數字組成的串,不超過100位
第二行,一個數字n,表示需要你連續變換多少次,n不超過20
輸出一個串,表示最後一次變換完的結果。
例如:
使用者輸出:
5
7
則程式應該輸出:
13211321322115
資源約定:
峰值記憶體消耗(含虛拟機) < 512M
CPU消耗 < 1000ms
package 第六屆;
import java.util.Scanner;
public class Exe72 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
int time = scanner.nextInt();
dfs(num+"",,time);
}
private static void dfs(String str, int count, int time) {
if (count >= time) {
System.out.println(str);
return ;
}
StringBuffer sb = new StringBuffer();
int ci = ;
for (int i = ; i < str.length()-; i++) {
if (str.charAt(i)!=str.charAt(i+)) {
sb.append(ci+""+str.charAt(i));
ci = ;
}
else {
ci++;
}
}
sb.append(ci+""+str.charAt(str.length()-));
dfs(sb.toString(),count+,time);
}
}
打賞一點錢,幫我買杯咖啡,繼續創作,謝謝大家!