P1164 小A点菜】的更多相关文章

P1164 小A点菜 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩M元(M<=10000). 餐馆虽低端,但是菜品种类不少,有N种(N<=100),第i种卖ai元(ai<=1000).由于是很低端的餐馆,所以每种菜只有一份. 小A奉行“不把钱吃光不罢休”,所以他点单一定刚好吧uim身上所有钱花完.他想知道有多…
P1164 小A点菜 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩M元(M<=10000). 餐馆虽低端,但是菜品种类不少,有N种(N<=100),第i种卖ai元(ai<=1000).由于是很低端的餐馆,所以每种菜只有一份. 小A奉行“不把钱吃光不罢休”,所以他点单一定刚好吧uim身上所有钱花完.他想知道有多…
P1164 小A点菜 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩M元(M<=10000). 餐馆虽低端,但是菜品种类不少,有N种(N<=100),第i种卖ai元(ai<=1000).由于是很低端的餐馆,所以每种菜只有一份. 小A奉行“不把钱吃光不罢休”,所以他点单一定刚好吧uim身上所有钱花完.他想知道有多…
P1164 小A点菜 提交 43.03k 通过 24.37k 时间限制 1.00s 内存限制 125.00MB 题目提供者洛谷 难度普及- 历史分数100 提交记录 查看题解 标签 洛谷原创   查看算法标签 进入讨论版 相关讨论   查看讨论 推荐题目   查看推荐   展开 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋…
题目链接:https://www.luogu.org/problemnew/show/P1164 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩M元(M<=10000). 餐馆虽低端,但是菜品种类不少,有N种(N<=100),第i种卖ai元(ai<=1000).由于是很低端的餐馆,所以每种菜只有一份. 小A奉行…
题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩MMM元(M≤10000)(M \le 10000)(M≤10000). 餐馆虽低端,但是菜品种类不少,有NNN种(N≤100)(N \le 100)(N≤100),第iii种卖aia_iai​元(ai≤1000)(a_i \le 1000)(ai​≤1000).由于是很低…
原题传输门>>https://www.luogu.org/problem/show?pid=1164<< 前几天开始联系DP的,一路水题做到这,发现这题套不了模板了QAQ 在大佬们的帮助下真正认识了DP 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩M元(M<=10000). 餐馆虽低端,但是菜品种…
题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩MM元(M \le 10000)(M≤10000). 餐馆虽低端,但是菜品种类不少,有NN种(N \le 100)(N≤100),第ii种卖a_iai​元(a_i \le 1000)(ai​≤1000).由于是很低端的餐馆,所以每种菜只有一份. 小A奉行“不把钱吃光不罢休”…
题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩M元(M<=10000). 餐馆虽低端,但是菜品种类不少,有N种(N<=100),第i种卖ai元(ai<=1000).由于是很低端的餐馆,所以每种菜只有一份. 小A奉行“不把钱吃光不罢休”,所以他点单一定刚好吧uim身上所有钱花完.他想知道有多少种点菜方法. 由于小…
题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩M元(M<=10000). 餐馆虽低端,但是菜品种类不少,有N种(N<=100),第i种卖ai元(ai<=1000).由于是很低端的餐馆,所以每种菜只有一份. 小A奉行“不把钱吃光不罢休”,所以他点单一定刚好吧uim身上所有钱花完.他想知道有多少种点菜方法. 由于小…
题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩MMM元(M≤10000)(M \le 10000)(M≤10000). 餐馆虽低端,但是菜品种类不少,有NNN种(N≤100)(N \le 100)(N≤100),第iii种卖aia_iai​元(ai≤1000)(a_i \le 1000)(ai​≤1000).由于是很低…
题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家--餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:"随便点". 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩M元(M≤10000). 餐馆虽低端,但是菜品种类不少,有NN种(N \le 100)(N≤100),第i种卖a i 元(ai ≤1000).由于是很低端的餐馆,所以每种菜只有一份. 小A奉行"不把钱吃光不罢休",所以他点单一定刚好吧uim身上…
题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家--餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:"随便点". 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩MM元(M \le 10000)(M≤10000). 餐馆虽低端,但是菜品种类不少,有NN种(N \le 100)(N≤100),第ii种卖a_iai​元(a_i \le 1000)(ai​≤1000).由于是很低端的餐馆,所以每种菜只有一份. 小A奉行"…
原题链接 https://www.luogu.org/problemnew/show/P1164 此题是一道简单的动规问题 才学两天不是很熟练,我苦思冥想看着题解终于想出来了. 主要的思路如下: 我们可以用二维数组f[i][v]来储存点第i道菜时已经花了v元的方案数,用一维数组jq[i]来储存第i道菜的价格,那么有如下三种情况: 1.若jq[i]==v时,说明前面i-1道菜所花的钱的总和等于第i道菜的价钱,那么这时我们可以用第i道菜来代替前i-1道菜,这样的话方案数就多了一种,所以f[i][v]…
传送 这是一个典型的背包方案问题,设f[j]为当前价值为j的方案数,则f[j]=f[j]+f[j-a[i]],即当前方案数为选这个的方案数和不选这个东西的方案数,代码如下 #include<iostream> #include<cstdio> #include<cmath> using namespace std; ,a[],m,ans,x,y,f[]; ]; int main() {cin>>n>>m; ;i<=n;i++) cin>…
传送门 除去花里胡哨的表层题干,其实可以简化为: 若有m个东西,每取一个要K个代价,问若要求取出数据的代价为n的方案数是多少 其实是01背包的一种变式(反正我就是这么认为的,不对又怎样,打我啊). 我认为还是挺好想的(但身为冻柜蒟蒻的我,还素选择写下这份题解OTZ) 假若说f[j]是你选前i种东西而用j个价格的方案数 以一个for循环控制i,以第二个for循环控制填满j 具体内容详见代码及注释 #include<iostream> #include<cstdio> using na…
这也是一道01背包的题 用的方法比较的巧妙.这个动态规划相当于反过来做的,自己理解就知道了.代码很短 #include<bits/stdc++.h> using namespace std; int main(){ int n,m; cin>>n>>m; ],money[]; f[]=;//这个方便计数 ;i<=n;i++) cin>>money[i]; ;i<=n;i++) for (int j=m;j>=money[i];j--)//为…
方程很简单 f[0] = 1 f[j] += f[j-w[i]] #include<cstdio> #define REP(i, a, b) for(int i = (a); i < (b); i++) using namespace std; const int MAXM = 11234; const int MAXN = 112; int f[MAXM], w[MAXN]; int m, n; int main() { scanf("%d%d", &n,…
//求方案数 定义状态f[i][j] 用前i件物品恰好放够体积为j的背包 方案数 #include<bits/stdc++.h> using namespace std; ; ; int n,m,v[maxn],f[maxn][maxm]; int main() { scanf("%d%d",&n,&m); ;i<=n;++i) scanf("%d",&v[i]); f[][v[]]=;//边界 ;i<=n;++i)…
(……) 小A点菜[传送门] 上标签: (一个神奇的求背包问题方案总数的题) 核心算法: ;i<=n;i++) for(int j=m;j>=a[i];j--) f[j]+=f[j-a[i]];//满足f[j-a[i]]!=0,则f[j]+=f[j-a[i]];f[j]代表总方案数 ac代码(laozibuxiangxiefenxi): #include<iostream> #include<cstdio> #include<algorithm> #incl…
题目原链接: Luogu 小A点菜 [解题思路] 常规的0-1背包,不过是求装满整个背包的方案数,只要把0-1背包的状态转移方程稍微改一下就行.因为要求方案数,那么把方程中的max换成sum就行. [解题反思] 要注意变量的含义和题目所问的问题 [参考程序] #include<iostream> #include<cstdio> using namespace std; int v,n,a[200005],f[10002]; int main() { cin>>v>…
题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家--餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:"随便点". 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩M元(M<=10000). 餐馆虽低端,但是菜品种类不少,有N种(N<=100),第i种卖ai元(ai<=1000).由于是很低端的餐馆,所以每种菜只有一份. 小A奉行"不把钱吃光不罢休",所以他点单一定刚好吧uim身上所有钱…
题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家--餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:"随便点". 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩 MM 元 (M \le 10000)(M≤10000) . 餐馆虽低端,但是菜品种类不少,有 NN 种 (N \le 100)(N≤100) ,第 ii 种卖 a_iai​ 元 (a_i \le 1000)(ai​≤1000) .由于是很低端的餐馆,所以每种菜只…
题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家--餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:"随便点". 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩M元(M<=10000). 餐馆虽低端,但是菜品种类不少,有N种(N<=100),第i种卖ai元(ai<=1000).由于是很低端的餐馆,所以每种菜只有一份. 小A奉行"不把钱吃光不罢休",所以他点单一定刚好吧uim身上所有钱…
大水题!! 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩M元(M<=10000). 餐馆虽低端,但是菜品种类不少,有N种(N<=100),第i种卖ai元(ai<=1000).由于是很低端的餐馆,所以每种菜只有一份. 小A奉行“不把钱吃光不罢休”,所以他点单一定刚好吧uim身上所有钱花完.他想知道有多少种点菜方…
题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩M元(M<=10000). 餐馆虽低端,但是菜品种类不少,有N种(N<=100),第i种卖ai元(ai<=1000).由于是很低端的餐馆,所以每种菜只有一份. 小A奉行“不把钱吃光不罢休”,所以他点单一定刚好吧uim身上所有钱花完.他想知道有多少种点菜方法. 由于小…
题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩M元(M<=10000). 餐馆虽低端,但是菜品种类不少,有N种(N<=100),第i种卖ai元(ai<=1000).由于是很低端的餐馆,所以每种菜只有一份. 小A奉行“不把钱吃光不罢休”,所以他点单一定刚好吧uim身上所有钱花完.他想知道有多少种点菜方法. 由于小…
题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩M元(M<=10000). 餐馆虽低端,但是菜品种类不少,有N种(N<=100),第i种卖ai元(ai<=1000).由于是很低端的餐馆,所以每种菜只有一份. 小A奉行“不把钱吃光不罢休”,所以他点单一定刚好吧uim身上所有钱花完.他想知道有多少种点菜方法. 由于小…
思路 简单动态规划问题 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家--餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:"随便点". 题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩MM元(M \le 10000)(M≤10000). 餐馆虽低端,但是菜品种类不少,有NN种(N \le 100)(N≤100),第ii种卖a_iai​元(a_i \le 1000)(ai​≤1000).由于是很低端的餐馆,所以每种菜只有一…
基本上还是01背包,首先注意必须正好花光钱,所以初始化时除了dp[0]以外其他都要设置成inf,然后因为求方案数,所以基本方程为dp[i] = dp[i-x] + dp[i],再根据inf进行一些特殊处理即得解 #include <cstdio> #include <cstring> #include <algorithm> + ; ; int dp[maxm]; int n, m; int x; int main () { scanf("%d %d"…