博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
洛谷 P1077 摆花
阅读量:4979 次
发布时间:2019-06-12

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

目录


题目

思路

$\text{DP}$

$\text{f[i][j]}$表示前$i$种花摆了$j$盆的方案数。
设$x$($x$的范围为$[0,a_i]$)为第$i$种花摆了多少盆,$k$($k$的范围为$[0,m-x]$)为前面$i-1$种花摆了多少盆。枚举$x$,$k$。
所以$f[i][x+k]=f[i][x+k]+f[i-1][k]$

代码

#include
using namespace std;int n,m;int f[101][101];inline int read(){ int x=0;bool f=0;char c=getchar(); while(c<'0'||c>'9'){if(c=='-')f=!f;c=getchar();} while(c>='0'&&c<='9'){x=x*10+c-'0';c=getchar();} return f?-x:x;}int main(){ n=read(),m=read(); for(int i=0;i<=n;++i){ f[i][0]=1; } for(int i=1,num;i<=n;++i){ num=read(); for(int j=0;j<=num;++j){ for(int k=0;k<=m-j;++k){ if(j==0&&k==0) continue; f[i][j+k]+=f[i-1][k]; f[i][j+k]%=1000007; } } } printf("%d\n",f[n][m]%1000007); return 0;}

转载于:https://www.cnblogs.com/poi-bolg-poi/p/11344789.html

你可能感兴趣的文章
【自定义异常】
查看>>
pip install 后 importError no module named "*"
查看>>
springmvc跳转方式
查看>>
IOS 第三方管理库管理 CocoaPods
查看>>
背景色渐变(兼容各浏览器)
查看>>
MariaDB 和 MySQL 比较
查看>>
MYSQL: 1292 - Truncated incorrect DOUBLE value: '184B3C0A-C411-47F7-BE45-CE7C0818F420'
查看>>
iOS 电话在后台运行时,我的启动图片被压缩
查看>>
ios学习笔记——NSURLSession
查看>>
怀念~广饶一中 闫立峰
查看>>
1856: [Scoi2010]字符串(Catalan数)
查看>>
mysql 对数据的自增ID重新进行排序
查看>>
停止线程
查看>>
05 方法与数组笔记【JAVA】
查看>>
jquery 随笔
查看>>
[ACM实验七]ACM程序设计基础(5)
查看>>
codeforces 219D 树形dp
查看>>
hdu 1698 线段树成段更新
查看>>
js中!和!!的区别及用法
查看>>
FreeMarker 快速入门
查看>>