牛客网2019真题-25-游戏海报

游戏海报

http://www.nowcoder.com/questionTerminal/6a6a0e4d6dfa4d89acd73bdfec79cf28

Set集合避免重复,一个字符串插入单个字符,枚举26个字符,复杂度26o(n),然后看评论区,我真是菜啊,排列组合:(字符串长度n+1)26-n
重复的次数恰好是字符串长度

import java.util.*;

public class Main {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        String s = sc.nextLine();
        Set<String> set = new HashSet<>();

        for(int i = 0; i < 26; i++){
            char temp = (char) ('a' + i);
            for(int j = 0; j <= s.length(); j++){
                StringBuilder stringBuilder = new StringBuilder(s);
                stringBuilder.insert(j, temp);
                set.add(stringBuilder.toString());
            }
        }
        System.out.println(set.size());
    }
}
全部评论

相关推荐

评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务