結果

問題 No.977 アリス仕掛けの摩天楼
コンテスト
ユーザー FeLvi_zzz
提出日時 2020-02-08 08:13:12
言語 Python3
(3.14.3 + numpy 2.4.4 + scipy 1.17.1)
コンパイル:
python3 -mpy_compile _filename_
実行:
python3 _filename_
結果
WA  
実行時間 -
コード長 622 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 367 ms
コンパイル使用メモリ 20,828 KB
実行使用メモリ 18,524 KB
最終ジャッジ日時 2026-04-12 13:12:34
合計ジャッジ時間 5,399 ms
ジャッジサーバーID
(参考情報)
judge1_0 / judge2_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 24 WA * 2
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

N = int(input())

import sys
sys.setrecursionlimit(10**6)

class UnionFind():
  def __init__(self, n):
    self.par = [i for i in range(n)]

  def root(self, x):
    if self.par[x] == x:
      return x
    else:
      self.par[x] = self.root(self.par[x])
      return self.par[x]
  
  def unite(self, x, y):
    x = self.root(x)
    y = self.root(y)
    self.par[y] = x

  def same(self, x, y):
    return self.root(x) == self.root(y)

uf = UnionFind(N)
for i in range(N-1):
  u, v = map(int, input().split())
  uf.unite(u, v)

ans = set()
for i in range(N):
  ans.add(uf.root(i))
print("Alice" if len(ans) > 1 else "Bob")
0