编程题:生成密钥
使用替换加密算法,首先需要一个密钥,密钥的生成有很多方法,如随机产生一个字符序列。在此我们可以通过选择一个单词或者短语作为密码,然后就这个密码生成随机排列字母表。生成方法描述如下:
输入一个由字母组成的密码,删除密码中所有重复的字母,然后删除字母表中的所有包含在密码中的字母,之后,从密码中最后一个字母后面的字母开始,将字母表分成两部分,最后密钥有三部分组成:密码+字母表后一部分+字母表前一部分。
例如:
输入一个密码"yinweifeng",去掉重复的字母后为"yinwefg"。
密码的最后一个字母是"g",从g开始去掉密码中字母后的一部分字母表为"hjklmopqrstuvxz"
字母表的前一部分为"abcd"
最后生成的密钥为:"yinwefg" + "hjklmopqrstuvxz" +"abcd", 即yinwefghjklmopqrstuvxzabcd
注:忽略大小写,将所有的大写字母都转换为小写
### 输入格式:
输入一个密码
### 输出格式:
输出密钥
### 输入样例:
in
yinweifeng
### 输出样例:
out
yinwefghjklmopqrstuvxzabcd
答案:若无答案欢迎评论
输入一个由字母组成的密码,删除密码中所有重复的字母,然后删除字母表中的所有包含在密码中的字母,之后,从密码中最后一个字母后面的字母开始,将字母表分成两部分,最后密钥有三部分组成:密码+字母表后一部分+字母表前一部分。
例如:
输入一个密码"yinweifeng",去掉重复的字母后为"yinwefg"。
密码的最后一个字母是"g",从g开始去掉密码中字母后的一部分字母表为"hjklmopqrstuvxz"
字母表的前一部分为"abcd"
最后生成的密钥为:"yinwefg" + "hjklmopqrstuvxz" +"abcd", 即yinwefghjklmopqrstuvxzabcd
注:忽略大小写,将所有的大写字母都转换为小写
### 输入格式:
输入一个密码
### 输出格式:
输出密钥
### 输入样例:
in
yinweifeng
### 输出样例:
out
yinwefghjklmopqrstuvxzabcd
答案:若无答案欢迎评论