古罗马帝国与各部门有一个强有力的政府系统,包括一个秘密服务部门。重要的文件以加密的形式发送防止窃听。在那个时代最流行的密码被称为替代密码和置换密码。例如,应用替代密码,改变所有字母“A”到“Y”字母表中的下一个字母(注:“Z”变成“A”),如:“VICTORIOUS”得到信息是“WJDUPSJPVT”。置换密码适用于一些置换到信息的信件。例如,应用置换密码(2,1,5,4,3,7,6,10,9,8),按这个顺序,重新对“VICTORIOUS”排列,就可以得到置换后的信息“IVOTCIRSUO”。它很快就注意到,分别应用替代密码和置换密码很弱。但组合时,他们足够强大的时候。因此,最重要的消息首先被加密使用的替代密码,然后结果是利用置换密码加密。加密“VICTORIOUS”与上面描述的密码组合得到“JWPUDJSTVP”。考古学家最近发现的信息刻在石板材。乍一看似乎完全没有意义,因此认为信息是加密的一些替代和置换密码。他们推测的原始邮件加密的文本,现在他们要检查他们的猜想。他们需要一个电脑程序去做,所以你要写一个。

输入:

输入文件包含多个测试案例。它们包括两行。第一行包含刻在板的消息。在加密前,所有的空格和标点符号都拆了,所以
加密的信息只包含大写字母的英文字母。第二行包含原始消息推测被加密在第一行的消息。它也包含的英文字母只有大写字母。输入文件的每行的长度相等且长度不超过100。

输出:

对于每一个测试案例,打印输出一行。如果在输入文件的第一行的消息可以在第二行消息加密的结果输出“YES”,否则就输出“NO”。

样例输入:
JWPUDJSTVP
VICTORIOUS
MAMA
ROME
HAHA
HEHE
AAA
AAA
NEERCISTHEBEST
SECRETMESSAGES

样例输出:
YES
NO
YES
YES
NO

[分析与说明]:
因为字母可以重排,每个字母的位置并不重要,重要的是每个字母出现的次数
①统计两个字符串每个字母出现的次数,得到两个数组cnt1[26],cnt2[26]
②之后我们排序下,排序之后结果相同,说明我们输入的两个字符串就可以通过重排一一映射变得相同了所以本道题的核心在与【排序】

4_1 古老的密码(UVa1339)<排序>的更多相关文章

  1. ACM-古老的密码(排序qsort)

    古老的密码 题目描述:给定两个长度一样且不超过100的字符串,判断是否能把其中一个字符串的各个字母重排,之后对26个字母做一个一一映射,使得两个字符串相同例如,JWPUDJSTVP重排后可以得到WJD ...

  2. LA 3213 古老的密码

    https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&category=15& ...

  3. 72.挖掘CSDN密码到链表并统计密码出现次数生成密码库

    list.h #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include & ...

  4. 关于在xp(sp3 专业版)下安装sql2005开发版图解

    今天我在xp上安装sql2005,搞了一上午也没有搞好,最终自己还是搞好,也装了,也卸载了!这里就总结一下,让以后用sql2005的朋友能有个参考!我也是自己在GOOGLE上搜索的! 转自:http: ...

  5. SQLServer之创建链接服务器

    创建链接服务器注意事项 当我们要跨本地数据库,访问另外一个数据库表中的数据时,本地数据库中就必须要创建远程数据库的DBLINK,通过DBLINNK数据库可以像访问本地数据库一样访问远程数据库表中的数据 ...

  6. 01-WIN2012R2+SQL2016故障转移群集的搭建

    一.前期准备  1.1.准备4台机器 机器名 IP 功能 jf-yukong 192.168.10.200 做域控服务器 Jf-storage 192.168.10.201 做ISCSI存储服务器 J ...

  7. PJzhang:从csdn到pipal密码分析工具

    猫宁!!! 偶然看到一篇短文,是对2011年csdn泄露的约643万数据的数据汇总分析,这里做个简要总结 .   一.单一密码使用5000人以上的,14个,当时密码中有两个命名方式很有趣,dearbo ...

  8. 浅谈NTLM Hash

    认识Windows Hash 早期SMB协议在网络上传输明文口令.后来出现LAN Manager 挑战/响应验证机制(LM),其很容易破解,因此微软提出了WindowsNT挑战/响应验证机制(NTLM ...

  9. 86.八千万qq密码按相似度排序并统计密码出现次数,生成密码库

    存储qq的文件地址以及按照密码相似度排序的文件地址 //存储qq的文件的地址 ] = "QQ.txt"; //按照密码相似度排序的文件地址 ] = "QQpassword ...

随机推荐

  1. Java.util.Calendar类

    Java.util.Calendar类 package myProject; import java.text.SimpleDateFormat; import java.util.Calendar; ...

  2. php 法大大对接

    通过编写扩展实现, 实现两种方式签署 1, 存证签署 存证签署流程 /** *个人 *客户在平台注册(姓名,身份证,手机号)---->三要素验证----->获取客户编号-------> ...

  3. vue + elementui表单重置 resetFields问题(无法重置表单)

    问题: elementui在重置表单时,无法使用this.$refs['formRefVal'].resetFields()清空表单数据; elementui 设置rules后没有效果 解决方法: 1 ...

  4. 路飞-celery框架

    Celery 官方 Celery 官网:http://www.celeryproject.org/ Celery 官方文档英文版:http://docs.celeryproject.org/en/la ...

  5. 磁盘分区(1):fdisk和parted

    一.Linux存储管理 关于Linux硬盘的识别: (1)如果是IDE设备,在计算机中将被识别为hd,第一个IDE设备会被识别为hda,第二个IDE设备会被识别为hdb,依此类推. (2)如果是SAT ...

  6. Digital filter

    https://ww2.mathworks.cn/help/signal/examples/practical-introduction-to-digital-filter-design.html D ...

  7. 《aelf经济和治理白皮书》重磅发布:为DAPP提供治理高效、价值驱动的生态环境

    2020年2月17日,aelf正式发布<aelf经济和治理白皮书>,这是aelf继项目白皮书后,在aelf网络经济模型和治理模式方面的权威论述.<aelf经济和治理白皮书>描述 ...

  8. AndroidStudio3.3+OpenCV开发环境搭建

    创建一个Android Studio普通项目 导入module 选择 File → New → Import Module 选择解压好的opencv-android-sdk下的sdk下的java,点O ...

  9. 1.学习一下Angularjs的promisee

    1.首先来了解一下promisee: 在谈论Promise之前我们要了解一下一些额外的知识:我们知道JavaScript语言的执行环境是“单线程”,所谓单线程,就是一次只能够执行一个任务,如果有多个任 ...

  10. Codeforces Round #622 (Div. 2)C2

    题意 N长度为500000以内,一个数字两边的数字不能都比他高,最多高一边 求他最大sum.叙述有问题,直接看样例 3 10 6 8 因为6左右都比他高,选择10 6 6或者6 6  8,sum明显前 ...