Pythonでこれを解決するにはどうすればよいですか?
テキストの文字列を入力してください (大きいほど良い): スペインの雨は主に平野にとどまります。「スペインの雨は主に平野にとどまる」の文字分布。は:
iiiiii
nnnnnn
aaaaa
sss
ttt
ee
hh
ll
pp
yy
m
r
これはその正確な出力を出力します:
dist={}
ex='The rain in Spain stays mainly in the plain.'
for ch in ex.lower():
if ch.isalpha(): dist.setdefault(ch,[]).extend(ch)
out={k:''.join(val) for k,val in dist.iteritems()}.values()
print '\n'.join(sorted(out, key=lambda x: (-len(x),x)))
プリント:
iiiiii
nnnnnn
aaaaa
sss
ttt
ee
hh
ll
pp
yy
m
r