(Java实现)洛谷 P1164 小A点菜
题目背景
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点菜相关推荐
- 【01背包求方案数模板】洛谷 P1164 小A点菜
洛谷 P1164 小A点菜 https://www.luogu.org/problemnew/show/P1164 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家--餐馆, ...
- 洛谷——P1164 小A点菜
P1164 小A点菜 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家--餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:"随便点" ...
- 洛谷P1164 小A点菜
题目背景 uim 神犇拿到了 uoi 的 ra(镭牌)后,立刻拉着基友小 A 到了一家--餐馆,很低端的那种. uim 指着墙上的价目表(太低级了没有菜单),说:"随便点". 题目 ...
- 洛谷P1164小A点菜
一.题目描述 https://www.luogu.com.cn/problem/P1164 背包问题 二.思想 这道题不难,本来用滚动数组做是不想发题解了,但是又想试试用二维数组就发现了好多问题.(所 ...
- 洛谷 P1164 小A点菜(01背包状态转移方程详细推导)
题目链接 今天刷题,本来背包问题感觉稳稳的懒得刷了,随手做两个就被卡住了, 原来自己只会做死板的背包,这种稍微变形的就不会推状态转移方程了 我又去看了一眼滚动背包的转变方法 加上大佬的题解,才稍微明白 ...
- 动态规划——小A点菜(洛谷 P1164)
题目选自洛谷P1164 这是一道简单的动规题,定义f[i][j]为用前i道菜用光j元钱的办法总数,其状态转移方程如下: (1)if(j==第i道菜的价格)f[i][j]=f[i-1][j]+1; (2 ...
- P1164 小A点菜 洛谷
P1164 小A点菜 洛谷 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家--餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:"随便点&qu ...
- 洛谷 P4430 小猴打架
洛谷 P4430 小猴打架 题目描述 一开始森林里面有N只互不相识的小猴子,它们经常打架,但打架的双方都必须不是好朋友.每次打完架后,打架的双方以及它们的好朋友就会互相认识,成为好朋友.经过N-1次打 ...
- 2017提高组D1T1 洛谷P3951 小凯的疑惑
洛谷P3951 小凯的疑惑 原题 题目描述 小凯手中有两种面值的金币,两种面值均为正整数且彼此互素.每种金币小凯都有 无数个.在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付的.现在小 凯想 ...
最新文章
- 从0梳理1场CV缺陷检测赛事!
- c++经典代码大全_宁海檩条C型钢型号大全
- iservice list方法_MyBatis-Plus 通用IService使用详解
- php中文网面试题_2020年PHP面试题大汇总(收藏)
- 2019 Vue开发指南:你都需要学点啥?
- 用Anaconda3搭建自己的TensorFlow环境
- Android仿人人客户端(v5.7.1)——采用RelativeLayout做父容器,实现左侧滑动菜单(一)...
- springmvc07 Json处理
- 机器学习笔记(二)线性回归模型实现
- 长生诀手游源码服务端
- 从零开始学java系列第一季第一期:简单的了解java并安装jdk以及环境配置
- 线上数据库增加字段导致服务请求超时总结
- 【Java工具类】(27)—AES加密工具类
- 数据库完整性--断言和触发器
- 阿里巴巴离职DBA职业生涯总结
- 英语不好怎么自学python_为什么我就是学不好英语啊?我明明很努力,但是为... 我英语一般,但我很想学Python这个编程语言,行不?...
- mysql入门很简单系列视频-学习笔记
- php实现国外邮箱,发送电子邮件 · 国外PHP框架Nette官网教程 · 看云
- python polygon_python Polygon模块安装
- 【rmzt:保时捷911炫酷主题】
热门文章
- 博图当前项目包含冗余服务器组态,博途中WINCC组态问题
- 免费的项目管理软件有哪些
- AutoHotkey中的变量名 全局与局部冲突问题 - double-ref 双重引用
- JMeter测试文档
- VIC之PL192使用介绍
- HTML+CSS 学校信息与网络中心静态网页设计
- 万兴pdf编辑解压后打不开_如何使用万兴PDF专家编辑PDF文档?
- RHCSA第四天作业
- 计算机毕业设计Node.js+Vue综合型体育场馆管理系统(程序+源码+LW+部署)
- java bigdecimal.valueof_java 中的大數據類型(BigInteger和BigDecimal) | 學步園