题目:建造房屋 (蓝桥OJ3362)

问题描述:


代码: 

#include<bits/stdc++.h>
using namespace std;
int n, m, k, ans, mod = 1e9 + 7;
long long dp[55][2605];
/*dp[i][j]:第i个街道上建j个房屋的总方案数
  枚举所有的转移,累加到dp[n][k]即总方案数
*/
int main()
{
	cin >> n >> m >> k;
	for(int i = 0; i <= k; i++)dp[0][i] = 1;  // 初始化,第一个街道上建造房屋的方案
	for(int i = 0; i < n; i++)  // 站在建好的前第i条街道上,去规划第i+1条街道怎么操作
		for(int j = 1; j <= m; j++)
			for(int l = i; l <= k; l++)
				(dp[i+1][j+l] += dp[i][l]) %= mod;	
	
  cout << dp[n][k] << '\n';	
	return 0;
}

知识点:动态规划

相关推荐

最近更新

  1. TCP协议是安全的吗?

    2024-04-13 09:32:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-13 09:32:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-13 09:32:03       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-13 09:32:03       20 阅读

热门阅读

  1. MySQL存储过程

    2024-04-13 09:32:03       13 阅读
  2. React Hooks全面解读与高效开发实践

    2024-04-13 09:32:03       15 阅读
  3. Spring Boot 经典面试题(五)

    2024-04-13 09:32:03       15 阅读
  4. 程序员日常工作的内容

    2024-04-13 09:32:03       16 阅读
  5. AI重构你的方方面面

    2024-04-13 09:32:03       16 阅读
  6. 后台权限控制及动态路由

    2024-04-13 09:32:03       16 阅读
  7. 利用机器学习库做动态定价策略的例子

    2024-04-13 09:32:03       13 阅读
  8. Rust与Go的对比

    2024-04-13 09:32:03       16 阅读
  9. arcgis js 动态绘制白膜

    2024-04-13 09:32:03       37 阅读