結果

問題 No.827 総神童数
ユーザー rookzeno
提出日時 2019-05-24 20:56:22
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
AC  
実行時間 1,949 ms / 2,000 ms
コード長 499 bytes
コンパイル時間 89 ms
コンパイル使用メモリ 12,672 KB
実行使用メモリ 86,784 KB
最終ジャッジ日時 2024-09-17 10:17:08
合計ジャッジ時間 32,616 ms
ジャッジサーバーID
(参考情報)
judge4 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 36
権限があれば一括ダウンロードができます

ソースコード

diff #

import sys
sys.setrecursionlimit(20000000)
#input = sys.stdin.readline
n = int(input())
g = [[] for i in range(n)]
for i in range(n-1):
    u,v = map(int,input().split())
    u-=1;v-=1
    g[u].append(v)
    g[v].append(u)
hu = [0]*n
def dfs(x,y,z):
    hu[x] =y
    for i in g[x]:
        if i == z:
            continue
        dfs(i,y+1,x)
dfs(0,0,-1)
bi = 1
mod = 10**9+7
for i in range(1,n+1):
    bi*=i
    bi%=mod
ans = 0
for i in hu:
    ans+= bi*pow(i+1,mod-2,mod)
    ans %= mod
print(ans)
0