蓝桥杯 FJ的字符串 (Java)

1.题目

FJ在沙盘上写了这样一些字符串:

A1 = “A”

A2 = “ABA”

A3 = “ABACABA”

A4 = “ABACABADABACABA”

… …

你能找出其中的规律并写所有的数列AN吗?
输入
仅有一个数:N ≤ 26。
输出
请输出相应的字符串AN,以一个换行符结束。输出中不得含有多余的空格或换行、回车符。
样例输入
3
样例输出
ABACABA

2.思路

规律就是开头和末尾输出的都是上一次的字符串,然后中间加个从A-Z的字符循环,详见代码

3.代码

import java.util.Scanner;

public class FJ_String {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int a = sc.nextInt();
		solution(a);
	}

	public static void solution(int m) {
		// 思路:1.输出形式:字符1+字符2+字符1
		// 设置临时字符串变量保存下一次输出的开头
		if (m == 1) {
			System.out.println('A');
		} else if (m > 1) {
			char mid = 'B';//从B开始
			String temp = "A" + "";//最先要输出ABA
			String temp2 = null;

			for (int i = 1; i < m; ++i) {// 控制循环几次

			temp2 = temp + mid + temp + "";
				mid = (char) (mid + 1);
			temp = temp2;
		}
		System.out.println(temp2);

	}
	}

}

temp就是下一次输出的开头。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值