欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

蓝桥杯之VIP试题 FJ的字符串

程序员文章站 2022-06-12 13:46:17
...

题目:VIP试题 FJ的字符串

问题描述
  FJ在沙盘上写了这样一些字符串:
  A1 = “A”
  A2 = “ABA”
  A3 = “ABACABA”
  A4 = “ABACABADABACABA”
  … …
  你能找出其中的规律并写所有的数列AN吗?

输入格式
  仅有一个数:N ≤ 26。
输出格式
  请输出相应的字符串AN,以一个换行符结束。输出中不得含有多余的空格或换行、回车符。

样例输入
3
样例输出
ABACABA

答案:

import java.util.Scanner;

public class Main
{
    public static void main(String[] args)
    {
        Scanner in = new Scanner(System.in);
//      输入行数n
        int n = in.nextInt();
//      通过递归算法,获得AN字符串
        System.out.println(getAN(n));
    }
//写递归时,从简单的入手,把模型打出来,再带入更多的数进去验算;自己要知道递归的最底层的结果是什么;
//递归的下一层会带有递归的上一层的结果,例如:
//  A1 = “A”
//  A2 = “ABA”
//  A3 = “ABACABA”  
//  递归是独立的一个方法,用到return;通常第一层的结果就是递归最底层的结果。
    private static String getAN(int i)
    {
        if (i == 1)
        {
            return String.valueOf((char)(64 + i));
        }
        return getAN(i - 1) + String.valueOf((char)(64 + i)) + getAN(i - 1);
    }
}

个人小结:asc码

蓝桥杯之VIP试题 FJ的字符串

相关标签: 蓝桥杯训练