[BZOJ1089][SCOI2003]嚴格n元樹
阿新 • • 發佈:2017-10-09
font scu rip 一個數 嚴格 精度 logs end 我們
2 2
【樣例輸入2】
2 3
【樣例輸入3】
3 5
3
【樣例輸出2】
21
【樣例輸出2】
58871587162270592645034001 設$dp[i]$表示深度不超過$i$的嚴格$n$元樹 那麽$dp[i]=dp[i-1]^{n}+1$ $ans=dp[d]-dp[d-1]$ Python不用寫高精度,美滋滋
1089: [SCOI2003]嚴格n元樹
Time Limit: 1 Sec Memory Limit: 162 MB Submit: 1925 Solved: 966 [Submit][Status][Discuss]Description
如果一棵樹的所有非葉節點都恰好有n個兒子,那麽我們稱它為嚴格n元樹。如果該樹中最底層的節點深度為d (根的深度為0),那麽我們稱它為一棵深度為d的嚴格n元樹。例如,深度為2的嚴格2元樹有三個,如下圖:
給出n, d,編程數出深度為d的n元樹數目。
Input
僅包含兩個整數n, d( 0 < n < = 32, 0 < = d < = 16)
Output
僅包含一個數,即深度為d的n元樹的數目。
Sample Input
【樣例輸入1】2 2
【樣例輸入2】
2 3
【樣例輸入3】
3 5
Sample Output
【樣例輸出1】3
【樣例輸出2】
21
【樣例輸出2】
58871587162270592645034001 設$dp[i]$表示深度不超過$i$的嚴格$n$元樹 那麽$dp[i]=dp[i-1]^{n}+1$ $ans=dp[d]-dp[d-1]$ Python不用寫高精度,美滋滋
import sys n, d = map(int, sys.stdin.readline().split()) if d == 0:print(1) else: f = [] f.append(1) for i in range(1, d + 1): f.append(f[i - 1] ** n + 1) print f[d] - f[d - 1]
[BZOJ1089][SCOI2003]嚴格n元樹