haskell remainings 1-1 1-2 8-2: memoize 10-1: bfs 10-2(*): bfs 12-1: dp 12-2: dp 14-2: memoize 16-2(*): memoize 17-1: dp 17-2: dp 18-2: coor compress 19-2(*): 包除原理じゃだめっぽい。memoize? 20-1: stateful 20-2: stateful