背景

NOIP2012
描述

小明的花店新开张,为了吸引顾客,他想在花店的门口摆上一排花,共m盆。通过调查顾客的喜好,小明列出了顾客最喜欢的n种花,从1到n标号。为了在门口展出更多种花,规定第i种花不能超过ai盆,摆花时同一种花放在一起,且不同种类的花需按标号的从小到大的顺序依次摆列。试编程计算,一共有多少种不同的摆花方案。
格式
输入格式

【输入】
输入文件共2行。第一行包含两个正整数n和m,中间用一个空格隔开。第二行有n个整数,每两个整数之间用一个空格隔开,依次表示a1、a2、……an。
输出格式

【输出】
输出只有一行,一个整数,表示有多少种方案。注意:因为方案数可能很多,请输出方案数对1000007取模的结果。
样例输入1

2 4
3 2

样例输出1

2

限制

1S
提示

【输入输出样例说明】
有2种摆花的方案,分别是(1,1,1,2),(1,1,2,2)。括号里的1和2表示两种花,比如第一个方案是前三个位置摆第一种花,第四个位置摆第二种花。
来源

NOIP2012普及组第三题

发一道比较水的体。一看就知道是dp,推一下就知道方程是:dp[i+1][j] = dp[i][j] + dp[i+1][j-1] - dp[i][j-a[i]-1]]
但是,要注意初始化f[i][0]=1。
其他,

就没有其他了,呵呵
代码如下

#include <cstdio>
#include <cstring>
#include<algorithm>
using namespace std;
int a[110];
int f[110][110];
int main()
{    int n,m,mod=1000007;while(scanf("%d%d",&n,&m)!=EOF){  for(int i=1;i<=n;i++)scanf("%d",&a[i]);  memset(f,0,sizeof(f));  for(int i=0;i<=n;i++) f[i][0]=1;  for(int i=1;i<=n;i++) {for(int j=1;j<=m;j++){  f[i][j]=f[i-1][j]+f[i][j-1];  if(j-a[i]-1>=0){f[i][j]-=f[i-1][j-a[i]-1];}f[i][j]=(f[i][j]+mod)%mod;  }  }printf("%d\n",f[n][m]);  }return 0;
}  

【vijosP1792】摆花相关推荐

  1. 蓝桥杯java 算法提高 摆花

    问题描述 小明的花店新开张,为了吸引顾客,他想在花店的门口摆上一排花,共m盆.通过调查顾客的喜好,小明列出了顾客最喜欢的n种花,从1到n标号.为了在门口展出更多种花,规定第i种花不能超过ai盆,摆花时 ...

  2. 【codevs 1315】1315 摆花2012年NOIP全国联赛普及组(dp)

    1315 摆花2012年NOIP全国联赛普及组  时间限制: 1 s   空间限制: 128000 KB  题目等级 : 黄金 Gold 题目描述 Description     小明的花店新开张,为 ...

  3. CH Round #30 摆花[矩阵乘法]

    摆花 CH Round #30 - 清明欢乐赛 背景及描述 艺术馆门前将摆出许多花,一共有n个位置排成一排,每个位置可以摆花也可以不摆花.有些花如果摆在相邻的位置(隔着一个空的位置不算相邻),就不好看 ...

  4. [蓝桥杯][算法提高VIP]摆花-多重背包计数问题

    题目描述 小明的花店新开张,为了吸引顾客,他想在花店的门口摆上一排花,共m盆.通过调查顾客的喜好,小明列出了顾客最喜欢的n种花,从1到n标号.为了在门口展出更多种花,规定第i种花不能超过ai盆,摆花时 ...

  5. 【动态规划】 摆花 【NOIp普及组 2012 第三题】 (ssl 2360/luogu 1077)

    摆花摆花摆花 题目大意 有n种花,每种花有ai支,取m支,有多少种取法?(同一种花取第1,第3支和取第1,第2支算一种取法) 解题方法: 用f[i][j]来表示前i种选j支的方案数,然后往后推 动态转 ...

  6. 【dp】P1077 摆花

    基础DP题 题目描述 小明的花店新开张,为了吸引顾客,他想在花店的门口摆上一排花,共m盆.通过调查顾客的喜好,小明列出了顾客最喜欢的n种花,从1到n标号.为了在门口展出更多种花,规定第i种花不能超过a ...

  7. 摆花(2012Noip普及组第3题)

    摆花 (flower.cpp/c/pas) [问题描述] 小明的花店新开张,为了吸引顾客,他想在花店的门口摆上一排花,共 m 盆.通过调查顾客的喜好,小明列出了顾客最喜欢的 n 种花,从 1 到 n ...

  8. c语言摆花问题,屋里摆花有讲究,不能随便放,5个摆花小技巧赶紧学

    现在很多人都会在家里养一些植物,不光能够净化室内空气,而且还能起到装点室内的效果,但是花花上周去朋友家做客的时候,他们家的植物养了不少,但是都堆放在客厅,看着特别挤,而且客厅并没有空气清新的感觉,相反 ...

  9. 2012NOIP普级组第三题--摆花(参考洛谷题解)

    一.题目描述 小明的花店新开张,为了吸引顾客,他想在花店的门口摆上一排花,共m盆.通过调查顾客的喜好,小明列出了顾客最喜欢的n种花,从1到n标号.为了在门口展出更多种花,规定第i种花不能超过ai盆,摆 ...

最新文章

  1. 用拉链法实现哈希算法的运算
  2. ROS Publisher node
  3. WPS漏洞利用工具Bully常见命令集合
  4. 怎么自学python语言-怎样学好python
  5. CentOS6.5 编译安装zabbix3.0.5,编译安装zabbix_agent客户端
  6. HDUOJ-----Brave Game
  7. SpringMVC接收json数组对象
  8. 前端学习(2390):登录模块介绍
  9. 45道mysql数据库题目_MySQL 45道练习题
  10. 如何设置iMatrix平台中列表标签(gridjqGrid)实现动态列表
  11. c语言宏 转换字符串,c预处理程序-如何从C宏的值生成char字符串?
  12. 俞敏洪回应新东方向国家图书馆捐课
  13. java 加载shellcode_MSF-Shellcode生成和使用
  14. presto查询报错
  15. eclipse中,jdk7和jdk8并存开发的实现方式
  16. 浅谈计算机网络安全问题和对策
  17. 格物 致知 诚意 正心 修身 齐家 治国 平天下
  18. 华为鲲鹏云服务技术与运用 部分习题
  19. c语言设计题目代码,C语言课程的设计题目.doc
  20. 利用同义词简化SQL Server 2005开发

热门文章

  1. 简单认识React的生命周期
  2. 解决php7无法加载curl的问题及反思
  3. H5 mui通过蓝牙调用打印机printUtil.js
  4. Idea中的Facets 与 Artifacts
  5. 问题 G: 深入浅出学算法007-求佩尔方程的解
  6. 南阳88--汉诺塔(一)
  7. 甲醛传感器模块ZE08-CH2O的使用及控制
  8. 拉链表(SCD2)的操作
  9. Caffe解惑:为什么Caffe里头有mutable_cpu_data和cpu_data
  10. ArchSummit讲师专访:腾讯张凯谈手机浏览器架构