10進法好きすぎない?
31. 全探索してもよさそうだが、各 v に対し 1*x+2*y+5*z=v なる (x, y, z) の個数をあらかじめカウントしておけば、計算が楽かも。100+100 を忘れて 1 敗。
32. 数字と文字列の変換が容易な Python 先生が偉大すぎる。4 桁 × 1桁を忘れないように。
その昔、こういう組を手計算で求める能力が高かった時代がありましたが (算オリ力といいます)、手計算なんてもう古い、時代は Python, Python や!
33. これも手計算で求める能力が高い時代がありましたが...ってやつ。まあこれくらいなら手計算でもそんなにしんどくないかも。やりませんが。
34. ファクトリオン [検索]
桁注目系は、きほん文字列経由でかんたんに書けるっぽい。
35. これは文字列経由せずに数値でやった方が楽かなぁ。
36. 基数変換については以下のとおり:
reverse は[::-1]でしたね。あっけなく探索できるのはなんとなく寂しさがある。
37. 上から捨てるのちょっとだけだるかった。あと、上限の評価を真面目にやらなかったけど、ちゃんと評価するのめんどそう。11個と与えられてるので、適当に区切ってやれば問題なかったけど。
38. パンデジタルについては問題32のように判定できる。あとは倍数を文字列にして結合すればよい。Pythonは偉大。
39. 全探索してもそんなに時間はかからないのであった。ただまあもっと簡単には出せる。(m^2-n^2, 2mn, m^2+n^2).
40. 文字列結合のできるPythonが偉大すぎる。桁数ごとに真面目にカウントするまでもなかった。