题解 | #字符串加密#

字符串加密

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

import java.util.Scanner;

// 注意细节,我要进厂了
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNextLine()) { 
            String key = in.nextLine();
            String str = in.nextLine();
            System.out.println(encrype(key, str));
        }
    }

    public static String encrype(String key, String str) {
        int[] dict = new int[26];
        boolean[] vis = new boolean[26];
        int n = key.length(), off = 0;
        for(int i = 0; i < n; i++) {
            if(!vis[key.charAt(i)-'a']) {
                dict[off++] = key.charAt(i)-'a';
                vis[key.charAt(i)-'a'] = true;
            }
        }
        for(int i = 0; i < 26; i++) {
            if(!vis[i]) dict[off++] = i;
        }
        StringBuffer b = new StringBuffer();
        for(int i = 0; i < str.length(); i++) {
            b.append((char)(dict[str.charAt(i) - 'a'] + 'a'));
        }
        return b.toString();
    }
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务