1
2

0.はじめに

 とりあえずDまで目標で挑みましたが、Cが精一杯でした。
 D、Eも解説を見ながらなんとなくわかりましたが
 解答例をなぞっただけで理解度は60%といったところ・・・。
 D以降の難易度が高かったためか、レートは-1と微減でした。

1.A - Shout Everyday

 Aにしてはややこしい問題。
 叫ぶ時刻が就寝時刻より遅い場合、起床時刻が叫ぶ時刻より早ければYes、遅ければNo
  0寝起叫24→Yes
  0寝叫起24→No
 叫ぶ時刻が就寝時刻より早い場合、起床時刻が叫ぶ時刻より遅ければYes、早ければNo
  0叫寝起24→Yes
  0叫起寝24→No
 と、0時をまたぐケースが今一場合分けが甘いと思つつ提出したところ、WAを食らいました。
 
 さらに場合分けをして
 叫ぶ時刻が就寝時刻より早い場合、起床時刻が叫ぶ時刻より早ければYes
  0起叫寝24→Yes
 叫ぶ時刻が就寝時刻より早い場合、起床時刻が就寝時刻より遅ければYes
  0叫寝起24→Yes
 上記以外の場合No
  0叫起寝24→No
 としたところACとなりました。
 ちょっと甘く見たため5分ロスしました。 

 https://atcoder.jp/contests/abc367/submissions/56780356

2.B - Cut .0

 いろいろやり方がありそうでしたが、インプットをひとまずリストに入れて操作しました。
 【実装】
  ・入力をを1文字ずつリストXに入れる
  ・変数NにXの長さをインプット
  ・変数フラグを0で初期化
  ~末尾の0を省く処理
  ・以下を変数iを0~N-1まで繰り返す
   ・X[N-i-1]が"0"かつflgが0の時(リストの後ろから見ていき0が続く場合)
    -X[N-i-1]を""に変換
   ・上記以外の場合(0の連続が途切れた場合)
    -flgに1をセット
  ・変数ANSにXの要素を結合した値を格納
  ~末尾が.だった場合省きつつ出力
  ・ANSの末尾が”.”だったら、末尾を除去して出力
   違ったらそのまま出力
 素直に実装して早めの解答を心掛けました。

 https://atcoder.jp/contests/abc367/submissions/56792840

3.C - Enumerate Sequences

 制約から、単純に条件に当てはまるリストを全列挙し
 その後リスト毎に集約した値がKで割り切れるリストのみを
 回答用リストに格納して順に出力して終了でACでした。
 
 こう書くと楽勝だった感じですが、条件に当てはまるリストを全列挙する方法が
 全く思い浮かばず、Nが1~8までを場合分けして
 それぞれの場合でループを作ると言う力技で解決しました。

 https://atcoder.jp/contests/abc367/submissions/56808135

以上

1
2
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
2