pythonchallenge 1
一款不错的编程游戏
首先解码这段文本:
g fmnc wms bgblr rpylqjyrc gr zw fylb. rfyrq ufyr amknsrcpq ypc dmp.
bmgle gr gl zw fylb gq glcddgagclr ylb rfyr'q ufw rfgq rcvr gq qm jmle.
sqgle qrpgle.kyicrpylq() gq pcamkkclbcb. lmu ynnjw ml rfc spj.
关于解码方法,没有任何提示,不过还好比较简单,每个字母的ASCII码加2就行了。解码后的文本是:
i hope you didnt translate it by hand. thats what computers are for.
doing it in by hand is inefficient and that's why this text is so long.
using string.maketrans() is recommended. now apply on the url.
根据提示,将URL中的map再进行一次解码(同样的使用ASCII码加2,图片中的提示:K->M, O->Q, E->G 是没用的),得到ocr,过关。
代码如下:(pytho)
解决方案一
1 import string 2 3 if __name__ == '__main__': 4 s = "g fmnc wms bgblr rpylqjyrc gr zw fylb. rfyrq ufyr amknsrcpq ypc dmp. bmgle gr gl zw fylb gq glcddgagclr ylb rfyr'q ufw rfgq rcvr gq qm jmle. sqgle qrpgle.kyicrpylq() gq pcamkkclbcb. lmu ynnjw ml rfc spj." 5 6 7 trans = string.maketrans('abcdefghijklmnopqrstuvwxyz', 'cdefghijklmnopqrstuvwxyzab') 8 print(s.translate(trans)) 9 print('map'.translate(trans))
解决方案二
import string if __name__ == '__main__': s = "g fmnc wms bgblr rpylqjyrc gr zw fylb. rfyrq ufyr amknsrcpq ypc dmp. bmgle gr gl zw fylb gq glcddgagclr ylb rfyr'q ufw rfgq rcvr gq qm jmle. sqgle qrpgle.kyicrpylq() gq pcamkkclbcb. lmu ynnjw ml rfc spj." i = '' for x in s: if ord(x) >= ord('a') and ord(x) <= ord('z'): i += chr(((ord(x) + 2 - ord('a'))) % 26 + ord('a')) else: i += x print(i) print(''.join(chr(ord(x) + 2) for x in 'map'))
解决方案三
import string if __name__ == '__main__': s = "g fmnc wms bgblr rpylqjyrc gr zw fylb. rfyrq ufyr amknsrcpq ypc dmp. bmgle gr gl zw fylb gq glcddgagclr ylb rfyr'q ufw rfgq rcvr gq qm jmle. sqgle qrpgle.kyicrpylq() gq pcamkkclbcb. lmu ynnjw ml rfc spj." trans = string.maketrans(string.ascii_lowercase, string.ascii_lowercase[2:] + string.ascii_lowercase[0:2]) print(s.translate(trans)) print('map'.translate(trans))

浙公网安备 33010602011771号