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.はじめに

 緑コーダ復帰後の初戦
 A~Cまでは順調に解けたもののDで苦戦。
 TLEの解決方法が見いだせず、あえなくタイムオーバー。
 茶色に逆戻りしました・・・。

1.A - Strictly Increasing?

 リストを2つ目から見ていき、
 参照している値が、一つ前の値以下ならNoを出力して終了
 最後まで参照してプログラムが終了してなければ
 Yesを出力して終了
 
 https://atcoder.jp/contests/abc395/submissions/63243538

2.B - Make Target

 たまに見るBの割に難しい問題。
 いい感じの実装方法が分からなかったので、
 問題文をそのまま実装してみました。
 【実装】
  1.N×Nの2次元リストLを用意し、”.”で初期化
  2.以下iを1~Nまで繰り返し
   -1.変数jにN+1-iをセット
   -2.iがj以下の時以下の処理
    -1.xとyをそれぞれ0~jまで繰り返し
     iが奇数なら"#"を偶数なら"."をL[x][y]にセット
  3.Lを1列ずつ結合して表示して終了

 https://atcoder.jp/contests/abc395/submissions/63265051

3.C - Shortest Duplicate Subarray

 問題文はややこしいですが、2つの同じ数の間が一番短い物を調べるだけの簡単な作業。
 まず空の辞書と、変数ans(初期値10の18乗)を用意し、列を先頭から参照
 見ている数字が辞書になければ、その数字をキー、位置を値に登録。
 見ている数字が辞書にあれば、その数字の位置と見ている数字の位置の差+1を求め
 ansをその数とansのうち小さい方で更新しつつ、辞書の値を見ている数字の位置に更新
 最後にansを出力して終了

 https://atcoder.jp/contests/abc395/submissions/63269290

以上

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?