POJ 1015 Jury Compromise——01背包变形
来源:互联网 发布:手写记事本软件 编辑:程序博客网 时间:2024/05/17 23:24
这是uva323的题解,把这个题的数据加强了
#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#include <vector>using namespace std;const int maxn = 210;int kase, n, m, d, p, add[maxn], sub[maxn], dp[30][maxn<<2];vector<int> path[30][maxn<<2];int main() { while (~scanf("%d %d", &n, &m) && n && m) { for (int i = 1; i <= n; i++) { scanf("%d %d", &d, &p); add[i] = d + p, sub[i] = d - p; } int fix = 20 * m; memset(dp, -1, sizeof(dp)); dp[0][fix] = 0; for (int i = 1; i <= n; i++) { for (int j = m; j >= 1; j--) { for (int k = 0; k < 2 * fix; k++) { if (0 > k + sub[i] || k + sub[i] > 2 * fix) continue; if (dp[j - 1][k] == -1) continue; if (dp[j][k+sub[i]] < dp[j - 1][k] + add[i]) { dp[j][k+sub[i]] = dp[j - 1][k] + add[i]; path[j][k+sub[i]] = path[j - 1][k]; path[j][k+sub[i]].push_back(i); } } } } int ans = 0; while (dp[m][fix - ans] == -1 && dp[m][fix + ans] == -1) ans++; int temp = (dp[m][fix + ans] > dp[m][fix - ans]) ? fix + ans : fix - ans; printf("Jury #%d\nBest jury has value %d for prosecution and value %d for defence:\n", ++kase, (dp[m][temp] + temp - fix) / 2, (dp[m][temp] - temp + fix) / 2); for (int i = 0; i < m; i++) { printf(" %d", path[m][temp][i]); } printf("\n\n"); } return 0;}
阅读全文
0 0
- POJ 1015 Jury Compromise——01背包变形
- UVA 323 Jury Compromise——01背包变形
- poj 1015 Jury Compromise 01背包+输出方案
- POJ 1015 Jury Compromise
- poj 1015 Jury Compromise
- POJ 1015 Jury Compromise
- poj 1015Jury Compromise
- POJ 1015 Jury Compromise
- poj 1015 Jury Compromise
- POJ 1015 Jury Compromise
- poj 1015 Jury Compromise
- poj 1015 Jury Compromise
- POJ 1015 Jury Compromise
- POJ 1015 Jury Compromise
- [POJ][1015]Jury Compromise
- POJ 1015 - Jury Compromise
- POJ 1015 Jury Compromise
- POJ 1015 Jury Compromise
- 编译hadoop
- 第二周实践项目一
- 机器学习笔记-参数调优和评价指标
- springMVC拦截器使用
- loadrunner运行报错:vuser_init.c(14): 错误 -27796: 连接服务器“127.0.0.1:1080”失败: “[10061]
- POJ 1015 Jury Compromise——01背包变形
- Unity_UGUI的事件系统
- 使用CDC的派生类进行绘图
- python中列表list的基本使用
- 3d旋转爱心
- 常用MIME类型
- 使用RecyclerView遇到notifyDataSetChanged无效
- 1,A+B问题
- 如何为CentOS 7配置静态IP地址