题解 | #字符串加密#

字符串加密

https://www.nowcoder.com/practice/e4af1fe682b54459b2a211df91a91cf3

import java.util.Scanner;
import java.util.HashMap;
import java.util.LinkedHashSet;
public class Main {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        String key = input.nextLine();
        String string = input.nextLine();
        LinkedHashSet<Character> charset = new LinkedHashSet<>();
        //对输入的密钥去重
        for (int i = 0; i < key.length(); i++) {
            if (i == key.indexOf(key.charAt(i))) {
                charset.add(key.charAt(i));
            }
        }
        int i = 97;
        int j = 97;
        //补全密钥
        while (charset.size() < 26) {
            charset.add((char) i);
            i++;
        }
        HashMap<Character, Character> hashMap = new HashMap<>();
        //使用map保存密钥对应关系
        for (Character character : charset) {
            hashMap.put((char) j, character);
            j++;
        }
        for (char c : string.toCharArray()) {
            System.out.print(hashMap.get(c));
        }


    }
}

全部评论

相关推荐

码农顶针:估计让你免费辅导老板孩子的学习
点赞 评论 收藏
分享
迷茫的大四🐶:我不许你接受,我不许你启动咏鹅
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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