题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=4472
dp水题
#include<iostream> #include<cstdio> #include<algorithm> #include<cstring> #include<cmath> #include<iomanip> #include<climits> #define mod 1000000007 using namespace std; int dp[1001]; int main() { int n; int k=0; dp[1]=1; for(int i=2; i<1001; i++) { for(int j=1; j<i; j++) { if((i-1)%j==0) { dp[i]+=dp[(i-1)/j]; dp[i]%=mod; } } } while(cin>>n) { cout<<"Case "<<++k<<": "<<dp[n]<<endl; } return 0; }