ふくほのひとりごと。

高専生が勉強したことの自分用メモ。

AtCoder / 友達の友達

ふくほです。
ABC016-C 友達の友達
を解きました。
atcoder.jp

考えたこと

友達の友達の友達の…
だとUnionFindで管理することが
最適ですが、
今回は友達の友達までなので
木は使いません。

ユーザーiの友達を2重vector
管理します。
ユーザーiの友達の一人をj
としたとき、jの友達を全探索します。
jの友達をkとしたとき
ikは友達でないことと
まだkが友達の友達として
数えられていないこと
の2つを確認します。
3重ループになりますが、
制約が小さいので大丈夫です。

提出コード

atcoder.jp

感想

はじめUnionFindで実装してて
あれあれ?ってなってました。
bool配列最高。
vectorの要素で回すfor文、
簡潔で分かりやすくて好き。