题目背景
uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种。

uim指着墙上的价目表(太低级了没有菜单),说:“随便点”。

题目描述
不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩M元(M≤10000)。

餐馆虽低端,但是菜品种类不少,有NN种(N \le 100)(N≤100),第i种卖a i
元(ai ≤1000)。由于是很低端的餐馆,所以每种菜只有一份。

小A奉行“不把钱吃光不罢休”,所以他点单一定刚好吧uim身上所有钱花完。他想知道有多少种点菜方法。

由于小A肚子太饿,所以最多只能等待1秒。

输入输出格式
输入格式:
第一行是两个数字,表示N和M。

第二行起N个正数ai
​ (可以有相同的数字,每个数字均在1000以内)。

输出格式:
一个正整数,表示点菜方案数,保证答案的范围在int之内。

输入输出样例
输入样例#1:
4 4
1 1 2 2
输出样例#1:
3

import java.util.Scanner;public class xiaoAdiancai {
//  public static void main(String[] args) {
//      Scanner sc =new Scanner(System.in);
//      int n = sc.nextInt();
//      int m = sc.nextInt();
//      int [] money = new int [n+1];
//      for (int i = 1; i < money.length; i++) {
//          money[i]=sc.nextInt();
//      }
//      int count = 0;
//      int [] [] dp = new int [n+1][m+1];
//      for (int i = 1; i <=n; i++) {
//          for (int j = 1; j <=m; j++) {
//              if(j==money[i]){
//                  dp[i][j]=dp[i-1][j]+1;
//              }
//
//              else if(j>money[i]){
//                  dp[i][j]=dp[i-1][j]+dp[i-1][j-money[i]];
//              }
//              else{
//                  dp[i][j]=dp[i-1][j];
//              }
//          }
//
//      }
//      System.out.println(dp[n][m]);
//  }public static void main(String[] args) {// TODO Auto-generated method stubScanner in=new Scanner(System.in);int n=in.nextInt();int m=in.nextInt();int a[]=new int[n+1];int dp[][]=new int[n+1][m+1];for(int i=1;i<=n;i++)a[i]=in.nextInt();for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){if(a[i]==j)dp[i][j]=dp[i-1][j]+1;else if(j>a[i])dp[i][j]=dp[i-1][j]+dp[i-1][j-a[i]];else dp[i][j]=dp[i-1][j];}}System.out.println(dp[n][m]);}}

(Java实现)洛谷 P1164 小A点菜相关推荐

  1. 【01背包求方案数模板】洛谷 P1164 小A点菜

    洛谷 P1164 小A点菜 https://www.luogu.org/problemnew/show/P1164 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家--餐馆, ...

  2. 洛谷——P1164 小A点菜

    P1164 小A点菜 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家--餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:"随便点" ...

  3. 洛谷P1164 小A点菜

    题目背景 uim 神犇拿到了 uoi 的 ra(镭牌)后,立刻拉着基友小 A 到了一家--餐馆,很低端的那种. uim 指着墙上的价目表(太低级了没有菜单),说:"随便点". 题目 ...

  4. 洛谷P1164小A点菜

    一.题目描述 https://www.luogu.com.cn/problem/P1164 背包问题 二.思想 这道题不难,本来用滚动数组做是不想发题解了,但是又想试试用二维数组就发现了好多问题.(所 ...

  5. 洛谷 P1164 小A点菜(01背包状态转移方程详细推导)

    题目链接 今天刷题,本来背包问题感觉稳稳的懒得刷了,随手做两个就被卡住了, 原来自己只会做死板的背包,这种稍微变形的就不会推状态转移方程了 我又去看了一眼滚动背包的转变方法 加上大佬的题解,才稍微明白 ...

  6. 动态规划——小A点菜(洛谷 P1164)

    题目选自洛谷P1164 这是一道简单的动规题,定义f[i][j]为用前i道菜用光j元钱的办法总数,其状态转移方程如下: (1)if(j==第i道菜的价格)f[i][j]=f[i-1][j]+1; (2 ...

  7. P1164 小A点菜 洛谷

    P1164 小A点菜 洛谷 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家--餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:"随便点&qu ...

  8. 洛谷 P4430 小猴打架

    洛谷 P4430 小猴打架 题目描述 一开始森林里面有N只互不相识的小猴子,它们经常打架,但打架的双方都必须不是好朋友.每次打完架后,打架的双方以及它们的好朋友就会互相认识,成为好朋友.经过N-1次打 ...

  9. 2017提高组D1T1 洛谷P3951 小凯的疑惑

    洛谷P3951 小凯的疑惑 原题 题目描述 小凯手中有两种面值的金币,两种面值均为正整数且彼此互素.每种金币小凯都有 无数个.在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付的.现在小 凯想 ...

最新文章

  1. 从0梳理1场CV缺陷检测赛事!
  2. c++经典代码大全_宁海檩条C型钢型号大全
  3. iservice list方法_MyBatis-Plus 通用IService使用详解
  4. php中文网面试题_2020年PHP面试题大汇总(收藏)
  5. 2019 Vue开发指南:你都需要学点啥?
  6. 用Anaconda3搭建自己的TensorFlow环境
  7. Android仿人人客户端(v5.7.1)——采用RelativeLayout做父容器,实现左侧滑动菜单(一)...
  8. springmvc07 Json处理
  9. 机器学习笔记(二)线性回归模型实现
  10. 长生诀手游源码服务端
  11. 从零开始学java系列第一季第一期:简单的了解java并安装jdk以及环境配置
  12. 线上数据库增加字段导致服务请求超时总结
  13. 【Java工具类】(27)—AES加密工具类
  14. 数据库完整性--断言和触发器
  15. 阿里巴巴离职DBA职业生涯总结
  16. 英语不好怎么自学python_为什么我就是学不好英语啊?我明明很努力,但是为... 我英语一般,但我很想学Python这个编程语言,行不?...
  17. mysql入门很简单系列视频-学习笔记
  18. php实现国外邮箱,发送电子邮件 · 国外PHP框架Nette官网教程 · 看云
  19. python polygon_python Polygon模块安装
  20. 【rmzt:保时捷911炫酷主题】

热门文章

  1. 博图当前项目包含冗余服务器组态,博途中WINCC组态问题
  2. 免费的项目管理软件有哪些
  3. AutoHotkey中的变量名 全局与局部冲突问题 - double-ref 双重引用
  4. JMeter测试文档
  5. VIC之PL192使用介绍
  6. HTML+CSS 学校信息与网络中心静态网页设计
  7. 万兴pdf编辑解压后打不开_如何使用万兴PDF专家编辑PDF文档?
  8. RHCSA第四天作业
  9. 计算机毕业设计Node.js+Vue综合型体育场馆管理系统(程序+源码+LW+部署)
  10. java bigdecimal.valueof_java 中的大數據類型(BigInteger和BigDecimal) | 學步園