Toy と帽子と ADP BE

主にプログラミングに関わる話をゆるくエモくやっていきます

AtCoder Beginner Contest 352

4完

各問題

A - AtCoder Line

X と Y のあいだに Z があればよいです。これ N 使わないんですが...。

B - Typing

次に押すべきが S の何文字目かを管理しておき、T を先頭から見て当該の S の文字と一致するかどうか確認し、一致すれば その T の文字の 番目を 回答し S の文字を一つ前に進めればよいです。

C - Standing On The Shoulders

A の合計(SUM_A とする)を求めておきます。あとは、N 人の巨人それぞれについて、SUM_A - A[i] + b[i] を求めて、一番大きいものが答えです。

D - Permutation Subsequence

P の 1 からの添え字の順列を先に求めておきます。入力例1なら {3, 1, 2, 4} です。

あとはその順列を先頭から set に入れていき、K個を超えたら古いものを捨てるようにします。

K 個に達したら毎回 set の先頭と末尾の差分を計算しそれの最小値が答えです。

E - Clique Connect

おおむね公式解説通りにやって、違うのが解説では a[i][0]a[i][j] を連結している部分で、自分は a[i][0] 側についてすでに merge したことのある頂点は見ない、そうでなければ見る、としたんですが、これでは通らず。

何が違うのかわからない...。

まとめ

D までサクッと解けて、E も考察はすぐできてほぼほぼあっていたのに通せずじまい。青パフォ余裕であったはずなのになぜ...。