解答編(ヒント1)
1日1個のペースでヒントを書いていこうかな。
こういう暗号の問題を見た時に最初にすることは各文字の出現頻度を見ることだと思うのです。エドガー・アラン・ポーの黄金虫とか。黄金虫 - Wikipedia
PythonだとCounterで手軽に頻度を数えられます。
>>> data = u"あかさたさなあかさたははあかさたまやあかさたはああらま0さわあらさまさわあかさたはやあかさかはわあかさかbcあかさかまああらはわま7あさはた さあさはさまさあかさたは0あかさたはさあ4bわまらあ6ま6さ7あらはわま7あかさたは7あかさたままあかさたさbあやbcまや" >>> from collections import Counter >>> Counter(data) Counter({u'\u3055': 25, u'\u3042': 24, u'\u304b': 16, u'\u306f': 13, u'\u307e': 12, u'\u305f': 11, u'\u308f': 6, u'\u3089': 5, u'\u3084': 4, u'b': 4, u'7': 4, u'c': 2, u'0': 2, u'6': 2, u'\u306a': 1, u'4': 1})
せっかくだから多い順にprintしてみましょう。
>>> for k, v in _.most_common(): print k, v さ 25 あ 24 か 16 は 13 ま 12 た 11 わ 6 ら 5 や 4 b 4 7 4 c 2 0 2 6 2 な 1 4 1