POJ 1015
#include<iostream>
#include<algorithm>
#define MAXN 201
#define count C_ount
using namespace std; int _m[][];
int count[][];
int a[]; struct _node
{
int first;
int second;
}; _node _cand[MAXN];
int n;
int main()
{
//freopen("acm.acm","r",stdin);
int m;
int i;
int j;
int time;
int max;
int u;
int v;
int u_v;
int _i;
int _j;
int _test_time = ;
int index;
int ans;
while(cin>>n>>m,n||m)
{
memset(count,-,sizeof(count));
memset(_m,-,sizeof(_m));
max = m*;
for(i = ; i < n; ++ i)
{
cin>>u>>v;
_cand[i].first = u - v;
_cand[i].second = u + v;
}
for(i = ; i < n; ++ i)
{
if(count[][max+_cand[i].first] < _cand[i].second)
{
_m[][max+_cand[i].first] = i;
count[][max+_cand[i].first] = _cand[i].second;
}
}
for(time = ; time < m-; ++ time)
{
for(u_v = ; u_v <= max*; ++ u_v)
{
if(_m[time][u_v] != -)
{
for(i = ; i < n; ++ i)
{
if(count[time+][u_v + _cand[i].first] < count[time][u_v] + _cand[i].second)
{
_j = u_v;
for(_i = time; _i >= ; -- _i)
{
if(_m[_i][_j] == i)
break;
_j -= _cand[_m[_i][_j]].first;
}
if(_i < )
{
_m[time+][u_v+_cand[i].first] = i;
count[time+][u_v+_cand[i].first] = count[time][u_v] + _cand[i].second;
}
}
}
}
}
} ///////////// for(i = ; i <= max; ++ i)
{
int tem_1 = count[m-][max+i];
int tem_2 = count[m-][max-i];
if( (tem_1 = count[m-][max+i]) >= || (tem_2 = count[m-][max-i]) >= )
{
if(tem_1 > tem_2)
{
ans = max+i;
}
else
{
ans = max-i;
}
break;
}
}
cout<<"Jury #"<<++ _test_time<<endl;
cout<<"Best jury has value "<<(count[m-][ans] + (ans - max))/<<" for prosecution and value "<<(count[m-][ans] - (ans - max))/<<" for defence:"<<endl;
j = ans;
index = ;
for(i = m-; i >= ; -- i)
{
a[index ++] = _m[i][j];
j -= _cand[_m[i][j]].first;
}
sort(a,a+index);
for(i = ; i < index; ++ i)
{
cout<<" "<<a[i]+;
}
cout<<endl;
cout<<endl;
}
}
关注我的公众号,当然,如果你对Java, Scala, Python等技术经验,以及编程日记,感兴趣的话。

技术网站地址: vmfor.com
POJ 1015的更多相关文章
- OpenJudge 2979 陪审团的人选 / Poj 1015 Jury Compromise
1.链接地址: http://bailian.openjudge.cn/practice/2979 http://poj.org/problem?id=1015 2.题目: 总Time Limit: ...
- 背包系列练习及总结(hud 2602 && hdu 2844 Coins && hdu 2159 && poj 1170 Shopping Offers && hdu 3092 Least common multiple && poj 1015 Jury Compromise)
作为一个oier,以及大学acm党背包是必不可少的一部分.好久没做背包类动规了.久违地练习下-.- dd__engi的背包九讲:http://love-oriented.com/pack/ 鸣谢htt ...
- POJ 1015 Jury Compromise 2个月后重做,其实这是背包题目
http://poj.org/problem?id=1015 题目大意:在遥远的国家佛罗布尼亚,嫌犯是否有罪,须由陪审团决定.陪审团是由法官从公众中挑选的.先随机挑选n个人作为陪审团的候选人,然后再从 ...
- (最优m个候选人 和他们的编号)Jury Compromise (POJ 1015) 难
http://poj.org/problem?id=1015 Description In Frobnia, a far-away country, the verdicts in court t ...
- POJ 1015 Jury Compromise dp分组
第一次做dp分组的问题,百度的~~ http://poj.org/problem?id=1015 题目大意:在遥远的国家佛罗布尼亚,嫌犯是否有罪,须由陪审团决定.陪审团是由法官从公众中挑选的.先随机挑 ...
- [Poj 1015] Jury Compromise 解题报告 (完全背包)
题目链接:http://poj.org/problem?id=1015 题目: 题解: 我们考虑设计DP状态(因为这很显然是一个完全背包问题不是吗?) dp[j][k]表示在外层循环到i时,选了j个人 ...
- POJ #1015 - Jury Compromise - TODO: POJ website issue
(poj.org issue. Not submitted yet) This is a 2D DP problem, very classic too. Since I'm just learnin ...
- Jury Compromise POJ - 1015 dp (标答有误)背包思想
题意:从 n个人里面找到m个人 每个人有两个值 d p 满足在abs(sum(d)-sum(p)) 最小的前提下sum(d)+sum(p)最大 思路:dp[i][j] i个人中 和 ...
- HDU POJ 1015 Jury Compromise(陪审团的人选,DP)
题意: 在遥远的国家佛罗布尼亚,嫌犯是否有罪,须由陪审团决定.陪审团是由法官从公众中挑选的.先随机挑选n个人作为陪审团的候选人,然后再从这n个人中选m人组成陪审团.选m人的办法是:控方和辩方会根据对候 ...
- poj 1015 Jury Compromise_dp
题意:n个陪审团,每个陪审团有x,y值,选出m个陪审团,要求 (sum(xi)-sum(yi))最少,当 (sum(xi)-sum(yi))最少有多个,取sum(xi)+sum(yi)最大那个 ,并顺 ...
随机推荐
- 20155317 王新玮 2016-2017-2 《Java程序设计》第9周学习总结
20155317 王新玮 2016-2017-2 <Java程序设计>第9周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以 ...
- 2018.09.19 atcoder AtCoDeer and Election Report(贪心)
传送门 很有意思的一道贪心. 就是每次翻最小的倍数来满足条件. 代码: #include<bits/stdc++.h> #define ll long long using namespa ...
- 44 The shopping psychology 购物心理
The shopping psychology 购物心理 ①People can be addicted to different things ---e. g.,alcohol, drugs, ce ...
- Django入门指南-第8章:第一个测试用例(完结)
python manage.py test python manage.py test --verbosity=2 # boards/tests.py from django.core.urlreso ...
- 对MVC模型的自悟,详尽解释,为了更多非计算机人员可以理解
今天小编在复习之前刚刚学会的一个小项目,然后突然对MVC有了新的理解,决定迅速将其写成文档,否则可能会忘记,就算是一个顿悟,学了java语言好久了,刚刚才对其有了比较深入的理解,希望对于同样的人能够有 ...
- HDU 2037 今年暑假不AC (区间贪心)
题意:又是中文题... 析:先说一下区间贪心的一个定理,选择不相交的区间:数轴上有n个开区间(ai, bi).选择尽量多的区间,使得这些区间两两不相交,贪心策略是,一定是选bi小的.(想一下为什么). ...
- 删除重复的feature vba VS 删除重复的feature python
VBA: Sub deleteDuplicatedFeature() Dim app As IApplication Set app = Application Dim pMxDocument As ...
- struts2-core-2.3.20.jar
核心配置位于该jar struts-default.xml struts-2.3.dtd <?xml version="1.0" encoding="UTF-8&q ...
- 三)mybatis 二级缓存,整合ehcache
mybatis-config.xml <setting name="cacheEnabled" value="true" /> PersonMapp ...
- Windows10+Python3下安装NumPy+SciPy+Matplotlib
Numpy.SciPy.MatplotLib是Python下从事科学计算必不可少的库.我在用其他的方法安装时出现各种问题,发现直接安装.whl包是最快且不报错的方法. 1.下载.whl包在下面的网站中 ...