1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

0.はじめに

 今年最後のABCに挑戦。
 原因不明の肩痛になやませられながらも、久々のA~DをAC。
 ケアレスミスもありましたが、レートも+53の732と
 いい感じで1年をしめくくれました。

1. A - Full House 2

 counterを使えとばかりの問題。
 数毎にカウントして、カウント数が2の物が2個か
 3の物が1個あったらYes、それ以外はNoを出力して終了

 https://atcoder.jp/contests/abc386/submissions/61146640

2.B - Calculator

 電卓問題。
 何か見たことある気もしつつ、文字列を順に読んでいき
 0が連続していれば00を、それ以外はそれぞれのキーを
 押した体でカウントしていき、最後にカウントを出力して終了。

 と、簡単な問題なのに、考慮不足で1回WAを食らいました・・・。

 https://atcoder.jp/contests/abc386/submissions/61156704

3.C - Operate 1

 丁寧に場合分けしていけばさほど難しくない問題。

 【考え方】
  1.SとTの長さが同じ場合
   SとTを先頭から比較していき差が1文字だったらYes
    →1文字入れ替える操作を1回行う
  2.SとTの長さの差が1の場合
   短い方の文字列をもとに先頭から比較していき
   違う文字があらわれた場合、長い方を一つとばす
   その後差が無かったら、Yes
    →Sが長ければ、1文字削除を1回行う
     Tが長ければ、1文字追加を1回行う
  3.上記以外の場合はNo

 https://atcoder.jp/contests/abc386/submissions/61168498

4.Diagonal Separation

 ぱっとみて、1行目から白ますが指定されるマスまでは
 黒く塗っていくよう、境目を記憶していき
 前の行よりの境目より、黒を指定されたマスが右に来るようならNo
 最後の行まで右に来なければYesとすればよいことが分かりました。

 【実装1】
  ・N行分のBとWの列を持ち管理する
   →余裕でTLE
 【実装2】
  ・マス指定がある行だけ辞書に保持して管理する
   →チェックを1~Nまで行ったところTLE
 【実装3】
  ・マス指定がある行だけ辞書に保持して管理する
   →チェックもマス指定がある行だけにしたところAC

 TLEをいかに回避するかの問題なのを最初から考慮すれば10分短縮できた
 カナと思います。

 https://atcoder.jp/contests/abc386/submissions/61189634

以上

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?