首页 > 小红的二叉树
头像 lhp_zml
发表于 2025-03-10 13:46:03
// 从深度为2开始,当前叶子节点为2个。每加一层,每个叶子节点会增加三条路径 #include<bits/stdc++.h> using namespace std; const int mod=1e9+7; int n; int main(){ cin>>n; 展开全文
头像 此在Dasein
发表于 2026-02-10 00:25:45
中心节点枚举法 在树(无环连通图)中,任意两个度数大于等于 2 的节点之间都存在路径。对于长度为 2 的路径 ,节点 是该路径唯一的“中间节点”或“转折点”。 因此,可以将“计算所有长度为 2 的路径数量”转化为: 遍历树中每一个节点 ,计算以 为中心(中点)能组成多少条路径。 假设节点 的度 展开全文
头像 CARLJOSEPHLEE
发表于 2025-03-10 22:49:02
n = int(input()) if n == 1: print(0) else: pow1 = pow(2,n-1,1000000007) print((3*pow1-5)%1000000007)
头像 努力努力zzb
发表于 2025-04-04 21:10:28
shendu2 =input() shendu=int(shendu2) MOD=10**9+7 if shendu==1: print(0) else: ZHILI=pow(2,shendu-1,MOD) BABA=3*ZHILI-5 daan=BABA%MOD 展开全文
头像 ading007
发表于 2025-05-23 14:30:17
package main import ( "fmt" ) const mod float64 = 1e9+7 func main() { var h int fmt.Scan(&h) cnt := 0 if h > 1 展开全文
头像 牛客754921490号
发表于 2025-12-20 21:26:02
#include <iostream> #include <cmath> using namespace std; // 非根且非叶节点数量*3 + 有子节点的根节点 // 2^n n <=1e4 数字巨大,int明显越界,需要提前mod // (ab)%m = (a 展开全文
头像 one_peace_Bo
发表于 2025-08-02 22:02:12
#include <cmath> #include <iostream> using namespace std; int main() { constexpr int MOD = 1e9+7; long long n; while (cin > 展开全文
头像 我没拿98k
发表于 2025-04-03 16:23:50
n=int(input()) if n==1: print(0) else: print((3*2**(n-1)-5)%(10**9+7)) 数学问题(3*pow(2,n-1)) - 5
头像 屁颠屁颠の父
发表于 2025-03-13 15:33:18
depth = int(input()) dp = [0] * depth dp[0] = 0 if depth == 1: print(dp[0]) elif depth == 2: dp[1] = 1 print(dp[1]) else: dp[1] = 1 展开全文
头像 Turgen
发表于 2026-02-10 00:30:51
考虑,直接输出 考虑,直接输出 考虑,为了不重复计数,新增的路径数只可能是第三层多出来那些叶子结点 他们既可以向上两层(有多少个叶子结点,就有多少个这样的方案数,对应图中红色的路径) 又可以向上一层向下一层(显然有几个上一层有几个,就有多少个方案数,因为兄弟之间才能做一次这样的路径,对应图中蓝色路径 展开全文