結果
| 問題 | No.763 Noelちゃんと木遊び | 
| コンテスト | |
| ユーザー |  | 
| 提出日時 | 2022-05-05 18:03:42 | 
| 言語 | PyPy3 (7.3.15) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 318 ms / 2,000 ms | 
| コード長 | 655 bytes | 
| コンパイル時間 | 425 ms | 
| コンパイル使用メモリ | 82,040 KB | 
| 実行使用メモリ | 177,280 KB | 
| 最終ジャッジ日時 | 2025-03-22 10:41:12 | 
| 合計ジャッジ時間 | 7,156 ms | 
| ジャッジサーバーID (参考情報) | judge5 / judge3 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 22 | 
ソースコード
#!/usr/bin/env python3
import sys
sys.setrecursionlimit(10 ** 9)
def main():
    N = int(input())
    G = [[] for _ in range(N)]
    dp = [0] * N
    for _ in range(N - 1):
        u, v = map(int, input().split())
        G[u - 1].append(v - 1)
        G[v - 1].append(u - 1)
    
    def dfs(now: int, pre: int):
        selectable = True
        for next in G[now]:
            if next == pre:
                continue
            dfs(next, now)
            if dp[next]:
                selectable = False
        if selectable:
            dp[now] = 1
        return
    dfs(0, -1)
    print(sum(dp))
    return
if __name__ == '__main__':
    main()
            
            
            
        