首页 > TAG信息列表 > P1064

P1064 [NOIP2006 提高组] 金明的预算方案(DP)

可以将分组的背包看成若干个01背包来做。 #include<cstdio> #include<iostream> using namespace std; int read(){ int num=0,f=1; char c=getchar(); while(c<'0'||c>'9'){ if(c=='-') f=-1; c=getchar(); } while(c>='0�

【题解】P1064 [NOIP2006 提高组] 金明的预算方案

P1064 [NOIP2006 提高组] 金明的预算方案 与传统01背包不同的是,每个主件不再是只有选/不选两种情况,由于还带有0/1/2个附件,所以每个主件一共有如下种情况: 没有附件: 不选主件/选主件(价格允许的话) 有一个附件: 不选主件/选主件(价格允许的话)/选主件和附件(价格允许选二者的话

洛谷P1064 金明的预算方案

题目戳 题目描述 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间金明自己专用的很宽敞的房间。更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过N元钱就行”。今天一早,金明就开始做预算了,他把想买的物品分为两类:主件与附件,附件是从属

【洛谷】P1064 [NOIP2006 提高组] 金明的预算方案

题目链接 https://www.luogu.com.cn/problem/P1064 解题思路 如果我们直接用动态规划的模板去处理的话,我们很难去处理选择附件时的主件选择; 我的一开始的思路是在输入过程中把主件的值加到附件上,但由于每个主件的附件不唯一且主件可以单独选择,就很难处理; 后来换了一种思路

洛谷 P1064 金明的预算方案

题目描述 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间金明自己专用的很宽敞的房间。更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过NN元钱就行”。今天一早,金明就开始做预算了,他把想买的物品分为两类:主件与附件,附件是从属于某个

P1064 金明的预算方案

----------------------------- 链接:Miku ------------------------------ 此文不是正解,而且主要内容都在代码和注释上 ------------------------------ 这是暴力分组背包做法 ---------------------------- 对于每一个主件及其附件,我们的选择是有限的,而且这道题中说了最多两个附

P1064 连续自然数和

题目描述 对一个给定的自然数 M ,求出所有的连续的自然数段,这些连续的自然数段中的全部数之和为 M 。 例子:1998+1999+2000+2001+2002=10000 ,所以从 1998 到 2002 的一个自然数段为 M=10000 的一个解。 输入格式 包含一个整数的单独一行给出 M 的值(10 <= M <= 2000000)。 输出格式 每

P1064 金明的预算方案 简要解析

题目链接:P1064 金明的预算方案 简要分析:     将每个主件和附件进行组合,然后做分组背包   坑点:  附件有可能比主件更早出现    编号实际是指行数,而非第几个组件 代码 #include<iostream>#include<cstdio>#include<cstring>using namespace std;const int maxn=10000;i

P1064-金明的预算方案

1 #include <bits/stdc++.h> 2 #define _for(i,a,b) for(int i = (a);i < b;i ++) 3 typedef long long ll; 4 using namespace std; 5 inline ll read() 6 { 7 ll ans = 0; 8 char ch = getchar(), last = ' '; 9 while(!isdigit(ch)) last

【dp】P1064 金明的预算方案

题目描述 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间金明自己专用的很宽敞的房间。更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过NN元钱就行”。今天一早,金明就开始做预算了,他把想买的物品分为两类:主件与附件,附件是从属于某个主