AtCoder ABC 225 B – Star or Not Python解説
Contents
Star or Not
N 頂点 N−1 辺の木が与えられます。
AtCoder Beginner Contest「Star or Not」
頂点には 1,2,…,N の番号がついており、i 本目の辺は頂点 aiと頂点 biを結んでいます。
この木がスターであるか判定してください。ただしスターとは、1 つの頂点から、他の全ての頂点に 1 本ずつ辺が出ている木のことです。
入力から頂点の数Nと頂点a, bを結ぶ辺が与えられます。頂点a, bの番号を数えて、N -1の頂点があるならスターなのでYes、そうでなければNoを出力します。
n = int(input())
result = [0] * (n + 1)
for _ in range(n - 1):
a, b = map(int, input().split())
result[a] += 1
result[b] += 1
print("Yes" if n - 1 in result else "No")
入力から頂点a, bを結ぶ辺があたえられるので、result[a] += 1、result[b] += 1とカウントアップしていきます。最後に頂点の数N – 1を持つ要素があればYes、そうでなければNoを出力して完了です。