AtCoder Beginner Contest 184
久々に暖まったので
A - Determinant
問題: A - Determinant
なので,です.
16bit以上の符号付き整数を使えばオーバーフローせずに正答できます.
拙解(C++): Submission #18302841 - AtCoder Beginner Contest 184
B - Quizzes
問題: B - Quizzes
文字列の各文字を左から順に見ていって,o
なら点増やし,x
なら点減らした後,点未満になっていれば増やす,というのをすれば各文字で合計になって間に合います.
拙解(C++): Submission #18308435 - AtCoder Beginner Contest 184
C
問題: C - Super Ryuma
剛超竜馬は少なくとも3回で任意のマスに到達できるので,とすると,
- のとき0回(移動しない)
- のとき1回(1回移動)
- のとき1回(1回斜め移動)
- のとき2回(2回移動)
- のとき2回(1回斜め移動+1回移動)
- のとき2回(2回斜め移動)
- 3回(2回斜め移動+1回移動)
これらの条件を上から順に適用していって当てはまったらreturn
をするとACです.
私は 4. を忘れて嘘解法で通してしまいました,難しい…
拙解(C++): Submission #18316367 - AtCoder Beginner Contest 184
D
「金貨枚,銀貨枚,銅貨枚の状態からいずれかの硬貨が枚になるまでの操作の回数」とすると,
が成り立って,これらをメモ化再帰で実装してを出力するとACです.として,各個の状態から高々つ遷移が出ているので,で間に合います.
拙解(C++): Submission #18319293 - AtCoder Beginner Contest 184
E
問題: E - Third Avenue
同じテレポーターを2回使うのは無駄なので,そのようにすると遷移が回に減ってに間に合います.
拙解(C++): Submission #18324412 - AtCoder Beginner Contest 184
F
通りの取りうる和はで全列挙できますが,これはつまりに間に合いません.半分ずつ全列挙してソートしておき,片方の各和に対してもう片方から二分探索でぎりぎりを超えない和を探すと,になって間に合います.
拙解(C++): Submission #18327848 - AtCoder Beginner Contest 184