こんかき!!!
11. データの整形がいっちゃんだるかった...やめていただきたい。Sugarの制約の生成をした経験が少しだけ活きたかもしれない。
12. ちょいめんどう。素数をあらかじめ調べておいた(過去の流用)。愚直に約数の個数を求めてもいいし、隣り合う数が互いに素なことを用いて、n, n-1 (ただし偶数はあらかじめ半分にしておく) の約数の個数をかけてもよい。
13. めんどうなだけはやめろ!桁ごとに足せばいいんじゃなーい
14. やるだけ。すでに得られた結果を利用したら、気持ち早くなりそう。
15. コンビネーションって知ってますか?DPするまでもなかった。交互にかけたり割ったりするといいですね。ナメてるよね?ナメてるよね??
16. ぬるま湯に浸かりすぎて一瞬「計算するだけだな!」ってなったけど違った。
各桁をリストで保持して2倍していくとよいです。業界用語でDPとかいうやつです。競プロっぽいな!あと0.3010.
17. クソゲーやめろ!!!こんなことするためにPEはじめたんやないんや!!!
ところで、40ってfortyなんですね(無限敗) これに関しては英語がカス。総じてひどい。
18. データ整形に慣れてきた。問題自体はおそらく2^15全探索が想定だろうけど、全探索書くのだるいと感じたので素直にDP。どっちが素直なのかはしらん。
19. 1901年じゃなくて1900年の最初の曜日をよこしてきたPEを極刑に処す
20. 問題16と一緒だな!
...と思ったら、アホほどバグらせるの巻。原因はDP配列の宣言で、
dp = [[0]*205]*101
とやっていたせい。こうすると、値を代入したときに他の列まで変わってしまうとか。は?なにその仕様?
というわけで今後は
dp = [[0 for i in range(205) for j in range(101)]
などとしましょうという話だった。
てかこれnumpyでやればよかっただけの話なのでは?