放牧代码和思想
专注自然语言处理、机器学习算法
    Why join the Navy if you can be a pirate?

破解东京大学2013年招生海报谜题

这是一张美女海报,「東京大学情報理工学系研究科」每年的招生海报都非常有内涵,其内涵之一是身着华美传统服饰的海报女郎,其内涵之二则是隐藏在海报上那串二进制数字背后的谜题。hankcs今天突发兴致,顺手解开了2013海报背后的谜题,用通俗的语言在此做个记录。

声明:此海报2013年5月份左右就已发布,各路高人肯定早已解明。hankcs并非专业人士,无门无派的浪人一名。但是浪人也有浪人的解法,加之今年的谜题特别简单,诸位笑看便是。

情報理工学系研究科ポスター

海报上的妹子老实说不是hankcs的菜,相比而言hankcs更喜欢前几年的妹子(你丫跑题了吧)。情報理工学系研究科应该相当于国内的计算机学院,大学院相当于研究生院。顺便扯一句,东京大学情报理工研究院特别牛,每年全世界只招200人左右,コンピュータ科学只招40人。

比起这个,海报上的那串0010……更加吸引hankcs的注意。你仔细想想,妹子就算再好看,跟你又有什么关系呢?

还是回到这串二进制数字上来吧,先想办法把图弄出来。海报位于http://www.i.u-tokyo.ac.jp/ist_en/library/posters/2013-poster_ja.shtml

shtml下没法右键存图,Chrome右键审查元素,拿到图像的实际地址:

拿到海报后可以尝试OCR,但是一看这对比度不行,错了一位数都可能毁灭后面的破解工作。还是丢到PS里修修看,没办法,coder就得有兼职美工+营销+策划+搬砖……杂学到瑞士军刀程度的觉悟。

识别出来一串二进制码:

0010101100101101001011010010110100101101001010110000101001111100010010010111000001110111011001110111110000001010011111000110111100101110001011100111010101111100010001010100011001001000010010010010000001001011010011100100111101010010000010100111110001100001011000110111010001101111011111000111110001111100011111000111110000100000011111000111110001111100011111000000101001111100011101010111001101110111001000010111110001010110010101100101011001010110001000000101011001010110010101100101011000001010001010110010110100101101001011010010110100101011001011010010110100101101001011010010101100101101001011010010110100101101001010110010110100101101001011010010110100101011000010100111110000100000011101010110100101101100011111000110111100100000001000000111010001111100011010000111011100111010001000000111110001100001011010110010111001111001011111000010110100111110010100110000101001111100001000000110011001110100001000000111110001010011001011010111010001101111011111000110111001110111001011110111001001111100010111110010111101100001011011110111110000101101001111100101010000001010011111000111001101100011011110010111001101111100011010010110000101101001001000000111110001101111001011100110111100100000011111000101111101110100011101000110110001111100001011010011111001010101000010100111110001110100011101010111010101100101011111000110111001101110011011100010111001111100011011110110101001101011011010010111110001101100011010110010111000100000011111000010110100111110010101100010110001011001000010100010101100101101001011010010110100101101001010110010110100101101001011010010110100101011001011010010110100101101001011010010101100101101001011010010110100101101001010110000101001111100010001110101010001100001011001000111110000001010011111000110100000101111011100110110010101111100000010100111110001101100011010000010000001110010011111000000101001111100010000110101001101110000010001100111110000001010001010110010110100101101001011010010110100101011000010100000101001010010011011110111010001100001011101000110010100100000011101000110100001101001011100110010000001100011011101010110001001100101001000000110001001111001001000000111001001100101011100000110010101100001011101000110100101101110011001110000101001010100001011000100100000101100010001010010110001010101001011000100111000101100010010010010110001010110001011000100010100101100010100100010110001010011001011000100100100101100010101000010110001011001001011000100111100101100010001100010110001010100001011000100111100101100010010110010110001011001001011000100111100001010001100100011000000110001010111100101111000110011001000000111010001101001011011010110010101110011001011100000101000001010011000010101111001011110011000100010000001101001011100110010000001110101011100000010110101100001011100100111001001101111011101110010000001101110011011110111010001100001011101000110100101101111011011100010111000001010

统计一下位数,一共2848位,是8的倍数,那就好办了,不管三七二十一看看ASCII再说,hankcs写的一段解码程式:

破解东京大学2013年招生海报谜题4.png

输出:

居然直接拿到了明文,也算是意外了。不过也许从另一方面来讲,也许是因为明文有足够的难度把人难倒吧。这些文字描述了什么呢?我来翻译并且解释一下。

转载须注明:码农场 » 破解东京大学2013年招生海报谜题

分享到:更多 ()
  1. Pingback: 东京大学2013年招生海报魔方谜题完整解法和代码 _ C++ _ 算法 _ 编程开发 _ 码农场

  2. 关于程序方面一窍不通,但是身为一个日语学习者,我翻来翻去发现怎么所有的文都是一个作者,啦啦啦,这个网站是你一个人在运作咩?所以,上外都生活着一群怎样的人儿啊~~!! [good]

  3. 可以用简单点的方法,既然只是旋转就不会改变任何一个字符,只是改变位置排列。结果肯定是有意义的英文单词的话,然后用程序跑下就好了(取出其中的可能的单词组合)。

    • 我之前没想清楚。 即使用快速幂还是要找模运算的周期 只不过可以少找一个。因为是模运算,所以肯定有周期,所以博主的做法,我想应该算标准做法。

我的开源项目

HanLP自然语言处理包基于DoubleArrayTrie的Aho Corasick自动机