bouzuya.hatenablog.com

ぼうずやのにっき

ARC010 A, B

ARC010 A, B 考察

ARC010 A - 名刺交換

指示通りにシミュレーションする。 N からはじめて A 以下なら B を補充する。 c_i を引けないならその日を出力する M まで到達できれば complete を出力する。 O(M)

https://atcoder.jp/contests/arc010/submissions/15557885

ARC010 B - 超大型連休

祝日が 366 あったとして 366 日すべてで 366 日を確認しても時間計算量は問題ない (O(N^2)) 。

振替休日まわりが面倒だけど指示通りに書くで良さそう。

あらかじめ祝日をリスト化しておく。 2012-01-01/2012-12-31 を順に走査する。その日が土日かと祝日かを得る。土日かつ祝日なら振替休日予定を増やす。土日または祝日なら連休を伸ばす。平日なら振替休日予定を見て振替休日かを判断する。振替休日なら振替休日予定を減らして連休を伸ばす。さらに振替休日かつ祝日なら振替休日予定を増やす。連休の最長を更新する。最後に最長の連休を出力する。

ぼくは日付のインクリメントを誤っていて 3WA 。言い訳すると Rust には標準の日付型がないので……。言語によっては曜日や日付の走査でのバグがないので楽になりそう。


『 RDRA 2.0 ハンドブック 』をざっと読んだ。とりあえず 1 周した。


ジュラシック・ワールド / 炎の王国』を観た。前回は 2018-12-27 。一部のベタな感じのキャラクターは好きなんだけど話としてはいまひとつ面白くない印象を受けた。端的に言うなら初代ジュラシックパークみたいなのが観たい。