您的位置:首页 > 其它

URAL - 2018 The Debut Album(状态dp 记忆化搜索)

2017-05-01 18:18 330 查看
#include <iostream>
#include <cstdio>
using namespace std;
//线段树区间更新模板
//不写注释的模板都是傻,1年后保证自己看不懂
const int N = 50005;
int dp[2]
;//dp[i][j]代表第j个放i,i为0或者为1
const int mod=1000000007;
int main()
{
int n,a,b;
scanf("%d%d%d",&n,&a,&b);
dp[0][0]=1;
dp[1][0]=1;
for(int l=1;l<=n;l++)
{
for(int i=1;i<=(a>l?l:a);i++)
{
dp[0][l]+=dp[1][l-i];
dp[0][l]%=mod;
}
for(int i=1;i<=(b>l?l:b);i++)
{
dp[1][l]+=dp[0][l-i];
dp[1][l]%=mod;
}
}
printf("%d\n",(dp[0]
+dp[1]
)%mod);
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: