うさよめも

@usayomoが何か書く

20210429

NBA

LAL-WAS, SAS-MIA, LAC-PHX をハシゴ。
MIAは勝ったからオールOKみたいなところはあるけど、もうちょっと安心感ある勝ち方してほしい。
八村のAD超えダンクは日本人みんな見といてくれ。
PHXは11年ぶりのPO進出決定ということで良かったね。最後にPO出たの俺が高校生の時かよ。

明日は起きられたらTOR-DEN見ようかな。

研鑽

Railsチュートリアル

次の仕事で使うということで4月半ばくらいから少しずつやっていたRailsチュートリアルをとりあえず完走。
フレームワークとしての全体構成のわかりやすさ、Webアプリケーション構築で欲しい機能のまとまり方はさすがといった感じで、 個人開発とかリソースが限られてるスタートアップでもガンガン作れる理由は肌でわかった。
個人的にはDBマイグレーション周りの機能に感動してた。DB構成管理って個別にやるとキツいんだよな。

競技プログラミング

昨日に続いてEducational DP ContestのCとD。 多分Eは重さと価値を入れ替えればいいんだと思うので明日やる。 あとDPっぽい茶Diff問題を探して、ABC129 C問題。 in使うんだったらlistじゃなくてsetのほうが速い。初歩押さえていきましょう。

qiita.com

atcoder.jp

N, M = map(int, input().split())
# A = [int(input()) for _ in range(M)] # 最初こっちで書いててTLE
A = {int(input()) for _ in range(M)}

cnt = [0] * (N+1)
cnt[0] = 1
if 1 not in A:
    cnt[1] = 1

for i in range(2, N+1):
    if i not in A:
        cnt[i] = cnt[i-2] + cnt[i-1]

        if cnt[i] > 1000000007:
            cnt[i] %= 1000000007

print(cnt[N])