hdu-1171 Big Event in HDU

hdu试题链接

文章目录

    • Problem Description
    • 题意:
    • 题解:
    • 代码:

Problem Description

Nowadays, we all know that Computer College is the biggest department
in HDU. But, maybe you don’t know that Computer College had ever been
split into Computer College and Software College in 2002. The
splitting is absolutely a big event in HDU! At the same time, it is a
trouble thing too. All facilities must go halves. First, all
facilities are assessed, and two facilities are thought to be same if
they have the same value. It is assumed that there is N (0<N<1000)
kinds of facilities (different value, different kinds).

Input

Input contains multiple test cases. Each test case starts with a
number N (0 < N <= 50 – the total number of different facilities).
The next N lines contain an integer V (0<V<=50 --value of facility)
and an integer M (0<M<=100 --corresponding number of the facilities)
each. You can assume that all V are different. A test case starting
with a negative integer terminates input and this test case is not to
be processed.

Output

For each case, print one line containing two integers A and B which
denote the value of Computer College and Software College will get
respectively. A and B should be as equal as possible. At the same
time, you should guarantee that A is not less than B.

Sample Input

2
10 1
20 1
3
10 1 
20 2
30 1
-1

Sample Output

20 10
40 40

题意:

有n个物品,每个物品都有价值和个数,要把这些物品分成两份,尽可能使得这两份相等,如果不相同就要保证第一份不小于第二份。答案是分别输出两份的价值

题解:

混合背包的题目,我这篇讲hdu 1059 Dividing的题解几乎和这样是一样的,就是读入方式不一样,稍微改一改代码就可以
这可以当做是模板题吧,建议熟读(滑稽)

代码:

#include<bits/stdc++.h>
using namespace std;
int a[8];
int sum=0;
int dp[120005];
int v[140],m[120];
bool f=0;
void zerone(int cost,int val)
{for(int i=sum;i>=cost;i--){dp[i]=max(dp[i],dp[i-cost]+val);}}
void complet(int cost)
{for(int i=cost;i<=sum;i++)dp[i]=max(dp[i],dp[i-cost]+cost);
}
void mul(int cost,int val,int num)
{if(cost*num>=sum){complet(cost);return ;}for(int i=1;i<=num;i<<=1){zerone(i*cost,i*val);num-=i;}zerone(num*cost,num*val);
}
int main()
{int n;while(cin>>n&&n>=0){int sum1;sum1=0;memset(dp,0,sizeof(dp));memset(v,0,sizeof(v));memset(m,0,sizeof(m));for(int i=1;i<=n;i++){cin>>v[i]>>m[i];sum1+=v[i]*m[i];}sum=sum1/2;for(int i=1;i<=n;i++){mul(v[i],v[i],m[i]);//花费,价值,数量 }sum=max(dp[sum],sum1-dp[sum]);cout<<sum<<" "<<sum1-sum<<endl;}return 0;
}
/*
2
10 1
20 1
3
10 1 
20 2
30 1
-1
*/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/320025.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

.Net Core应用框架Util介绍(二)

Util的开源地址https://github.com/dotnetcore/utilUtil的开源协议Util以MIT协议开源&#xff0c;这是目前最宽松的开源协议&#xff0c;你不仅可以用于商业项目&#xff0c;还能把Util的代码放进你的框架&#xff0c;放心使用。Util的命名Util这个名字看上去不怎么高大上&…

【期望】【高斯消元】图上游走(金牌导航 期望-6)

图上游走 金牌导航 期望-6 题目大意 给出一个无向连通图&#xff0c;小明初始在点1&#xff0c;每一步等概率地走向相连的其他点&#xff0c;当走到n时结束&#xff0c;定义分数从1为走到n的过程中经过的边的编号之和&#xff0c;现在让你给这m条边重新编号&#xff0c;使最…

[CSA35G][XSY3318]Counting Quests (DP)

XSY3318 CSA35G 对于一个询问区间的集合SSS&#xff0c;求出每一个数被哪些区间覆盖了&#xff0c;记为SiS_iSi​。 要能保证猜出选中数&#xff0c;当且仅当每个数的SiS_iSi​互不相同。 考虑求出不满足要求的集合SSS的个数。 首先可以观察得到SiS_iSi​的一个性质&#xff1…

hdu-1114 Piggy-Bank

文章目录Problem Description题意&#xff1a;题解&#xff1a;代码&#xff1a;hdu-1114Problem Description Before ACM can do anything, a budget must be prepared and the necessary financial support obtained. The main income for this action comes from Irreversib…

ATcoder-[AGC048B]Bracket Score【结论,贪心】

正题 题目链接:https://atcoder.jp/contests/agc048/tasks/agc048_b 题目大意 长度为nnn的合法括号序列可以包含[...][...][...]和(...)(...)(...)。 如果在第iii个位置是′(′\ (\ ′ ( ′ 或者 ′)′\ )\ ′ ) ′那么可以获得aia_iai​的权值&#xff0c;否则获得bib_ibi​…

.Net架构篇:实用中小型公司支付中心设计

前言说起支付平台&#xff0c;支付宝量级的支付平台和一个小型公司的支付不可同日耳语。一个初创或刚创业一两年的公司&#xff0c;一没人力&#xff0c;二没财力的情况下&#xff0c;如果也想对接支付那怎么办呢&#xff1f;感谢支付宝和微信支付&#xff0c;两大行业巨头提供…

【期望】选书问题(金牌导航 期望-7)

选书问题 金牌导航 期望-7 题目大意 有n个人&#xff0c;每个人有自己的选书目录&#xff0c;一个人有p的概率选当前的书&#xff0c;有1-p的概率不选&#xff0c;即去查看下一本书&#xff08;过n后回到1&#xff09;&#xff0c;现在问你选书的逆序对的期望数 输入样例 …

[CSA49G][XSY3315] Bunny on Number Line (DP)

CSA49G XSY3315 因为判断两串是否本质不同只看某几项是不是好数&#xff0c;与究竟是哪个好数无关&#xff0c;所以考虑转换一下题意&#xff1a; 给出一个长度为aka_kak​的01串SSS&#xff0c;第a1,a2,...,aka_1,a_2,...,a_ka1​,a2​,...,ak​项为1&#xff0c;其余项为0。 …

Rabbit的工作(2)

牛客网 文章目录题目描述题解&#xff1a;代码&#xff1a;题目描述 Rabbit通过了上次boss的考核&#xff0c;现在她又遇到了一个问题。 Rabbit接到了K个任务&#xff0c;每个任务她可以自由选择用i天去完成(1≤ i≤ N)。刁钻的boss想让Rabbit恰好用W天完成所有任务。 已知Rabb…

jzoj6065-[NOI2019模拟2019.3.18]One?One!【FFT】

正题 题目链接:https://gmoj.net/senior/#main/show/6065 题目大意 oneness(x)oneness(x)oneness(x)表示xxx的约数中全是111的数的个数&#xff0c;给出一个长度为lll的随机生成的数nnn&#xff0c;求∑i1noneness(i)\sum_{i1}^noneness(i)i1∑n​oneness(i) 解题思路 转换一…

netcore编程之后面对不习惯的xshell黑屏部署,是时候使用jenkins自动化发布工具了...

在很久之前net还只能在windows上部署的时候&#xff0c;或许很多创业公司的朋友发布项目还都是人肉部署&#xff0c;反正windows都是可视化的界面&#xff0c;拖拖拉拉&#xff0c;开开关关还不是特别麻烦。。。现如今你的项目需要在linux上部署&#xff0c;可惜的是再也没有什…

【期望】关灯游戏(金牌导航 期望-8)

关灯游戏 金牌导航 期望-8 题目大意 有n盏灯&#xff0c;有些是亮的&#xff0c;有的是暗的&#xff0c;现在如果按一个位置的开关&#xff0c;那么是它因数的位置的灯都会改变开关情况&#xff0c;现在如果用k步不能直接关完&#xff0c;就随机按&#xff0c;直到可以k步关…

【招聘(重庆)】新空间(重庆)科技有限公司招聘.NET Core

全新平台公司&#xff0c;技术氛围好&#xff0c;未来上升空间巨大!平台架构师薪资范围&#xff1a;15K至40K岗位职责&#xff1a;1、负责公司业务以及相关平台的架构设计、技术选型、研发工作, 参与产品架构的规划与设计&#xff1b;2、遵循总体的架构规划与规范设计项目的应用…

jzoj6067-[NOI2019模拟2019.3.18]More?More!【dp】

正题 题目链接:https://gmoj.net/senior/#main/show/6067 题目大意 nnn个点的一张竞赛图&#xff0c;第iii个点向第jjj个点(i<j)(i<j)(i<j)连边的概率是ppp&#xff0c;否则就是第jjj个点向第iii个点连边。 对于每个i(i<n)i(i<n)i(i<n)求出能够选出一个大小…

[XSY3320] string (AC自动机,哈希,点分治)

XSY3320 前置芝士&#xff1a;回文前缀&&borderborderborder 推荐博客 推荐博客 考虑点分治&#xff0c;问题变成求经过重心的回文路径个数。 一条经过重心的回文路径长这样&#xff1a; xxx到zzz的串与yyy到rootrootroot的串相同。 建出根到每个节点对应的串的AC自…

【期望】守卫挑战(金牌导航 期望-9)

守卫挑战 金牌导航 期望-9 题目大意 有n个数&#xff0c;到第i个数&#xff0c;有p_i的概率选择这个数&#xff0c;问你最后选了最少L个数&#xff0c;且选的数的和再加k大于等于0 样例输入 3 1 0 10 20 30 -1 -1 2样例输出 0.300000数据范围 0⩽k⩽20000\leqslant k\leq…

xinjun与阴阳师

来源&#xff1a;牛客网 文章目录题目描述题解&#xff1a;代码&#xff1a;题目描述 xinjun是各类手游的狂热粉丝&#xff0c;因随手一氪、一氪上千而威震工大&#xff0c;现在他迷上了阴阳师。xinjun玩手游有一个习惯&#xff0c;就是经过层层计算制定出一套方案来使操作利益…

P3311-[SDOI2014]数数【AC自动机,dp】

正题 题目链接:https://www.luogu.com.cn/problem/P3311 题目大意 求一个不超过nnn的数字使其不包含任何sss集合中的数字串。 解题思路 很经典的ACACAC自动机上面dpdpdp&#xff0c;但是因为是数字所以要来点数位dpdpdp的东西&#xff0c;多开一维用0/10/10/1表示是否在上界…

如何在 ASP.Net Core 中使用 Consul 来存储配置

原文: USING CONSUL FOR STORING THE CONFIGURATION IN ASP.NET CORE作者: Nathanael[译者注&#xff1a;因急于分享给大家&#xff0c;所以本文翻译的很仓促&#xff0c;有些不准确的地方还望谅解]来自 Hashicorp 公司的 Consul 是一个用于分布式架构的工具&#xff0c;可以用…

[XSY3381] 踢罐子(几何)

XSY3381 点被选为点对之一的贡献我们单独计算&#xff08;这部分贡献的总和为4n(n−1)(n−2)4n(n-1)(n-2)4n(n−1)(n−2)&#xff09;。接下来只讨论剩余部分的贡献。 先把任意三个点构成的六种选择方案合并&#xff0c;发现在外接圆周和弦之间的点每个有2的贡献&#xff0c;…