蓝桥杯---列名

题目链接:列名

直接模拟出来了

java 复制代码
import java.math.BigInteger;
import java.util.Arrays;
import java.util.LinkedList;
import java.util.Queue;
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        StringBuilder s=new StringBuilder("A");
        System.out.println(s.charAt(0));
        for(int i=2;i<=2023;i++){
            int l=s.length();
            char ch=(char)(s.charAt(l-1)+1);
            if(ch<='Z'){
                s.replace(l-1,l,String.valueOf(ch));
            }
            else {
                for(int j=1; ;j++){
                    ch=(char)(s.charAt(l-j)+1);
                    if(ch>'Z'){
                        //两种情况,要么前一位加一,要,要么直接就加一个长度
                        if(l-j==0){
                            //说明要加 例如ZZ
                            s.insert(0,"A");
                            for(int k=1;k<s.length();k++){
                                s.replace(k,k+1,"A");
                            }
                            break;
                        }
                    }
                    else{
                        s.replace(l-j,l-j+1,String.valueOf(ch));
                        for(int k=l-j+1;k<s.length();k++){
                            s.replace(k,k+1,"A");
                        }
                        break;
                    }
                }
            }
            System.out.println("i="+i+" "+s.toString());
        }

    }
}
相关推荐
近津薪荼1 分钟前
优选算法——滑动窗口1(单调性)
c++·学习·算法
diediedei2 分钟前
嵌入式C++驱动开发
开发语言·c++·算法
时艰.4 分钟前
Java 并发编程:Callable、Future 与 CompletableFuture
java·网络
码云数智-园园5 分钟前
深入理解与正确实现 .NET 中的 BackgroundService
java·开发语言
燃于AC之乐7 分钟前
《算法实战笔记》第10期:六大算法实战——枚举、贪心、并查集、Kruskal、双指针、区间DP
算法·贪心算法·图论·双指针·区间dp·二进制枚举
好好研究8 分钟前
SpringBoot整合SpringMVC
xml·java·spring boot·后端·mvc
千寻技术帮9 分钟前
10386_基于SpringBoot的外卖点餐管理系统
java·spring boot·vue·外卖点餐
diediedei11 分钟前
高性能计算通信库
开发语言·c++·算法
曹轲恒12 分钟前
SpringBoot整合SpringMVC(末)
java·spring boot·后端
_周游12 分钟前
Java8 API 文档搜索引擎_2.索引模块(程序)
java·搜索引擎·intellij-idea