永続データプログラミングと競技プログラミング 〜 Haskell でがんばる競プロ