Last active
January 15, 2019 07:29
-
-
Save xullnn/73ce7885aad95719d8252108ffd834fb to your computer and use it in GitHub Desktop.
zhuolaobanmimatiaozhan
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
encoded_text = <<-MSG | |
snmft | |
ltslcnsnonjhmzemjizfsbjsenijmfsdn | |
cnfrnfsbtdftonftljnsndnljwjsbz | |
emndtzsnbfshmjslqjemjljwjsbz | |
hfndtzonmznmztijonfsluns | |
efnrnrfczjpjhmjslemtsl | |
btrjshmzqjczjcnqjifqnfslonfrnmjonjrnijemnxmn | |
mfnqnftonjqjxmnljemzrnslijrnrfczjwjsbzyfrjsljozkjsllj | |
dtzcnjwjsxznwfsefteftonzvzxmnqjifsqnzcnfqjgftlznijxmzczjhmjsllzt | |
dtzcnjwjsdtslonsgnxmjslonslqn | |
dfsonzlzfnoncnfslcnslbjsen | |
eznemtslutdnqjyf | |
wfslwjsrjshmtslcnsizitslqjkfqftijmzf | |
jwbtcnfslvnslsnynfthmzdnljsneznlfscnslvzijrnrfczjwjsbz | |
gnslljnhmzsnijqndtzdnxmfslonzxmnvzfsgzwjsbz | |
emzsnmftdzs | |
MSG | |
ord_to_letter = ('a'..'z').map.with_index(1) { |c, i| [c, i] }.to_h | |
old_stdout = $stdout | |
$stdout = StringIO.new | |
ords_of_encoded = encoded_text.chars.map { |c| ord_to_letter[c] } | |
offset = 5 | |
decoded = | |
ords_of_encoded.map do |ord| | |
if ord.nil? | |
"\n" | |
else | |
moved = (ord - offset) % 26 | |
real_ord = moved == 0 ? 26 : moved % 26 | |
ord_to_letter.key(real_ord) | |
end | |
end.join | |
$stdout = old_stdout | |
puts decoded | |
# 此行及以下内容不要复制 --------------------------------------------------------- | |
# 解出的拼音原文和中文 | |
# nihao | |
# gongxinijiechuzheduanwenzidehanyi | |
# xiamianwoyaojiaogeiniyigerenwu | |
# zhiyouniwanchenglezhegerenwu | |
# caiyoujihuihuodejiangpin | |
# zaimimaxuekechengzhong | |
# womenchulexuexiledaliangjiamihejiemidezhishi | |
# hailiaojieleshigezhumingdemimaxuerenwutamengejufengge | |
# youxierensuiranzaozaojiuqushiledanliuxialebaoguideshuxuechengguo | |
# youxierenyongjinbishengjingli | |
# yanjiuguaijixiangxingwenzi | |
# zuizhongpoyileta | |
# rangrenmenchongxindudonglefalaodehua | |
# erwoxiangqingnitiaochuyigenizuiganxingqudemimaxuerenwu | |
# binggeichunideliyouyishangjiushiquanburenwu | |
# zhunihaoyun | |
# | |
# 你好 | |
# 恭喜你解出了短文的含义 | |
# 西面我要交给你一个任务 | |
# 只有你完成了这个任务 | |
# 才有机会获得奖品 | |
# 在密码学课程中 | |
# 我们除了学习了大量加密和解密知识 | |
# 还了解了十个著名的密码学人物,他们各具风格 | |
# 有些人虽然早早就去世了但留下了宝贵的数学成果 | |
# 有些人用尽毕生精力 | |
# 研究古埃及象形文字 | |
# 最终破译了它 | |
# 让人们重新读懂了法老的话 | |
# 而我想请你挑出一个你最感兴趣的密码学人物 | |
# 并给出你的理由,以上就是全部任务 | |
# 祝你好运 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment