资源限制
内存限制:512.0MB C/C++时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s
问题描述
FJ在沙盘上写了这样一些字符串:
A1 = “A”
A2 = “ABA”
A3 = “ABACABA”
A4 = “ABACABADABACABA”
… …
你能找出其中的规律并写所有的数列AN吗?
输入格式
仅有一个数:N ≤ 26。
输出格式
请输出相应的字符串AN,以一个换行符结束。输出中不得含有多余的空格或换行、回车符。
样例输入
3
样例输出
ABACABA
import java.util.Scanner;
public class Test1 {
public static void main(String[] args) {
Scanner myScanner = new Scanner(System.in);
//输入一个数:N <= 26;
int N = myScanner.nextInt();
A a = new A();
System.out.println(a.sandbox(N));
}
}
class A {
private String[] arr = {"A", "B", "C", "D", "E", "F", "G",
"H", "I", "J", "K", "L", "M", "N", "O", "P", "Q",
"R", "S", "T", "U", "V", "W", "X", "Y", "Z"};
public String sandbox(int n) {
if(n == 1) {
return arr[n -1];
} else {//巧妙利用递归方法
return sandbox(n - 1) + arr[n - 1] + sandbox(n - 1);
}
}
}
![](https://img-blog.csdnimg.cn/img_convert/9b03b22f9509c5235cf26a542e6cac26.png)
![](https://img-blog.csdnimg.cn/img_convert/27c6b5bfb0fa882cd6730f2df98f92ef.png)