【NOIP2012普及组】摆花 (递推)
来源:互联网 发布:万国数据官网 编辑:程序博客网 时间:2024/05/17 02:12
这是一道递推的题,f(i,j)前i种花放前j个位置。
f(i,j)=f(i-1,j)+f(i-1,j-1)……..+f(i-1,j-min(a[i],j)).
其实就是枚举现在第i种花放几盆,最多能放min(a[i],j)盆。然后剩下的放前i-1种花。有了递推方程,剩下的就是填表了。
详细代码如下:
#include<cstdio>#include<cstdlib>#include<iostream>using namespace std;const int maxn=105;const int mod=1000007;int a[maxn],n,m,d[maxn][maxn]={0};void work(){ d[0][0]=1; for(int i=1;i<=n;i++) for(int j=0;j<=m;j++) for(int k=0;k<=a[i]&&k<=j;k++) { d[i][j]=(d[i][j]+d[i-1][j-k])%mod; } cout<<d[n][m];}int main(){ //freopen("flower.in","r",stdin); //freopen("flower.out","w",stdout); scanf("%d%d",&n,&m); for(int i=1;i<=n;i++) scanf("%d",&a[i]); work(); return 0;}
1 0
- 【NOIP2012普及组】摆花 (递推)
- 【NOIP2012普及组】摆花(递推)
- 【NOIP2012普及组】摆花
- [NOIP2012普及组]摆花
- [Noip2012普及组]摆花
- NOIP2012普及组-摆花
- 【noip2012普及】摆花
- NOIP2012普及组 T3 摆花(加强版)
- noip2012普及组 摆花(DP)
- (2050): 【NOIP2012普及组】摆花
- Cpp环境【NOIP2012普及组】【Vijos1792】摆花
- NOIP2012普及组 摆花(重庆一中高2018级信息学竞赛测验6) 解题报告
- Codevs 1315 摆花 ——2012年NOIP全国联赛普及组 dp递推
- noip2012 摆花 (动态规划)
- [NOIP2012][vijos1792]摆花(dp)
- noip2012摆花
- [NOIP2012][VIJOS1792]摆花
- NOIP2012摆花
- |Tyvj|NOIP1999|动态规划|贪心|P1878 拦截导弹
- listview如何实现分页加载
- iOS 9 Universal Links
- 本地NTP服务器与客户端配置
- leetcode:数组之Rotate Image
- 【NOIP2012普及组】摆花 (递推)
- 2-The Transport Layer: TCP, UDP, and SCTP
- 汇编学习笔记(二)-- 配置编辑器
- getWindow().setBackgroundDrawable(null);对UI优化的测试
- 面试:递归和非递归方式实现先序、中序、后序遍历代码
- TCP/IP五层协议图
- HTML 5 placeholder 改变字体颜色
- PCA的数学原理
- 扩展实体