UVA 1645 Count
Posted 日拱一卒 功不唐捐
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UVA 1645 Count相关的知识,希望对你有一定的参考价值。
https://vjudge.net/problem/UVA-1645
题意:有多少个n个节点的有根树,每个深度中所有节点的子节点数相同
dp[i] 节点数为i时的答案
除去根节点还有i-1个点,如果j是i-1的约数,说明能平均分成j棵子树
每棵子树有(i-1)/j个节点,所以可以递推
递推:子问题
#include<cstdio> using namespace std; const int mod=1e9+7; int dp[1001]; int main() { dp[1]=1; for(int i=2;i<=1000;i++) for(int j=1;j<i;j++) if((i-1)%j==0) dp[i]=(dp[i]+dp[(i-1)/j])%mod; int n,t=0; while(scanf("%d",&n)!=EOF) printf("Case %d: %d\n",++t,dp[n]); }
以上是关于UVA 1645 Count的主要内容,如果未能解决你的问题,请参考以下文章