博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj3014
阅读量:5749 次
发布时间:2019-06-18

本文共 767 字,大约阅读时间需要 2 分钟。

题意:把n个一样的蛋糕放进m个一样的盘子,有多少种方法。

分析:dp,f[i][j]表示i个盘子装j个蛋糕的方法数。分两种情况,有空盘方法数为f[i - 1][j](撤掉一个空盘),无空盘的方法数为f[i][j - i](每个盘子撤掉一个蛋糕)。采用滚动数组。

ContractedBlock.gif
ExpandedBlockStart.gif
View Code
#include 
#include
#include
#include
using namespace std; #define maxn 4505 #define w 1000000007 int n, m; int f[2][maxn]; int main() {
//freopen("t.txt", "r", stdin); scanf("%d%d", &m, &n); if (m > n) m = n; for (int i = 1; i <= n; i++) f[1][i] = 1; f[0][0] = f[1][0] = 1; for (int i = 2; i <= m; i++) {
for (int j = 1; j <= n; j++) f[i & 1][j] = f[(i - 1) & 1][j]; for (int j = i; j <= n; j++) f[i & 1][j] = (f[i & 1][j] + f[i & 1][j - i]) % w; } printf("%d\n", f[m & 1][n]); return 0; }

转载地址:http://krhzx.baihongyu.com/

你可能感兴趣的文章
怎么用sysLinux做U盘双PE+DOS??
查看>>
Spring Transactional
查看>>
shell脚本实例
查看>>
我的友情链接
查看>>
Windows Phone 7 隔离存储空间资源管理器
查看>>
Microsoft Excel 2000/2003修复工具
查看>>
apache安装报错undefined reference ssl
查看>>
关于爱情只有一句忠告
查看>>
CentOS 7下安装部署Oracle11g图文教程
查看>>
F#初学笔记06
查看>>
实战:将企业域名解析委派给企业DNS服务器
查看>>
在Lync 2013环境部署Office Web Apps
查看>>
微软大会Ignite,你准备好了么?
查看>>
读书笔记-高标管事 低调管人
查看>>
Master带给世界的思考:是“失控”还是进化
查看>>
用户和开发者不满苹果iCloud问题多多
查看>>
java.lang.UnsatisfiedLinkError:no dll in java.library.path终极解决之道
查看>>
我的工具:文本转音频文件
查看>>
【许晓笛】从零开始运行EOS系统
查看>>
【跃迁之路】【460天】程序员高效学习方法论探索系列(实验阶段217-2018.05.11)...
查看>>