设为首页 加入收藏

TOP

hdu 4472 Count
2015-07-20 17:40:28 来源: 作者: 【 】 浏览:3
Tags:hdu 4472 Count

?

?

题目大意:给你n个节点,组成一个颗树,要求树的每层的每个节点都有相同的儿子树。

思路:除去根节点,我们把n-1节点分成j组,即是把这棵树看成是一棵对称树,每组中的节点数相同。所以dp[i]=sum(dp[j]),(1<=j<=i-1&&(i-1)%j==0)

?

code:

?

#include
  
   
#include
   
     #include
    
      #include
     
       using namespace std; const int mod=1000000007; int dp[1010]; int main() { dp[1]=1; dp[2]=1; dp[3]=2; dp[4]=3; for(int i=5;i<=1000;i++) { for(int j=1;j+1<=i;j++) { if((i-1)%j==0) { dp[i]+=dp[j]; dp[i]=dp[i]%mod; } } } int n; int Kase=0; while(scanf(%d,&n)==1) { printf(Case %d: %d ,++Kase,dp[n]); } return 0; }
     
    
   
  


?

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇从三层架构到IoC的蜕变 下一篇HDOJ 4474 Yet Another Multiple ..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·HTTP协议深度解析: (2025-12-25 16:21:03)
·HTTP 概述 - MDN (2025-12-25 16:21:00)
·视频直播为什么要用u (2025-12-25 16:20:57)
·用 Python 进行数据 (2025-12-25 15:49:09)
·如何学习Python数据 (2025-12-25 15:49:07)