首页 > 代码库 > hdu 4472 dp
hdu 4472 dp
http://acm.hdu.edu.cn/showproblem.php?pid=4472
第一直觉找规律,第二直觉 把树拆成子树,然后递推或者DP
然后发现不行,然后才发现自己题都没读,,,,
dp[i]=segma(dp[j] | (i-1)%j==0)
#include <cstdio> #include <cstring> #include <cstring> const int MAXN = 1000+50; const int MOD = 1e9+7; #define ll long long ll dp[MAXN]; void init() { memset(dp,0,sizeof(dp)); 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[j])%MOD; } } int main() { init(); int ic=0,n; while(~scanf("%d",&n)){ printf("Case %d: %I64d\n",++ic,dp[n]); } return 0; }
hdu 4472 dp
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。