密码解密

 给定一段“密文”字符串s,其中字符都是经过"密码本”映射的,现需要将“密文”解密并且输出映射的规则 ("a-i"分别用"1-9"表示,"j-z" 分别用"10-26"表示
 约束:映射始终唯一
 输入:201920*
 输出:tst

import java.util.*;

public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        String s = sc.nextLine();
        
        Map<String,Character> tempMap = new HashMap<>();
        
        for(int i = 1;i < 27;i++){
            if(i < 10){
                Character sa = (char)(i - 1 + 'a');
                tempMap.put(String.valueOf(i),sa);
            }else{
                StringBuffer ss = new StringBuffer();
                Character sa = (char)(i - 1 + 'a');
                ss.append(String.valueOf(i)).append("*");
                tempMap.put(ss.toString(),sa);
            }
        }
        
        StringBuffer res = new StringBuffer();
        for(int i = 0;i < s.length();i++){
            int sum = 0;
            if(i + 2 < s.length()&&!Character.isDigit(s.charAt(i + 2))){
                sum = sum * 10 + s.charAt(i) - '0';
                sum = sum * 10 + s.charAt(i + 1) - '0';
                StringBuffer ss = new StringBuffer();
                ss.append(String.valueOf(sum)).append("*");
                //从tempMap获取结果
                res.append(tempMap.get(ss.toString()));
                i = i + 2;
            }else{
                StringBuffer ss = new StringBuffer();
                ss.append(String.valueOf(s.charAt(i) - '0'));
                //从tempMap获取结果
                res.append(tempMap.get(ss.toString()));
            }
        }
        System.out.print(res);
    }
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 请解密以下代换密码的密文:JGRMQOYGHMVBJWRWQFPWHGFFDQGFPFZRKBEEBJIZQQOC...
    cdmmax阅读 886评论 0 0
  • 必要的基础知识 编码 将现实世界的内容(文字、图片、视频等所有的信息)转换成比特序列的过程就叫做编码。例如,ASC...
    JMasche阅读 1,431评论 0 2
  • connect_config.json中password为加密后的密码。 使用下面java程序可以解密TVE5Yh...
    SailSea阅读 5,915评论 2 2
  • 本文主要介绍移动端的加解密算法的分类、其优缺点特性及应用,帮助读者由浅入深地了解和选择加解密算法。文中会包含算法的...
    苹果粉阅读 11,679评论 5 29
  • 前言 经常做逆向的同学应该不陌生这个软件,头几天想分析一下太极的实现原理,看了一下,发现他对常用对字符串进行加密操...
    欢乐马_19e9阅读 2,623评论 0 0

友情链接更多精彩内容