01背包问题(两种状态)UVa-12563 - Jin Ge Jin Qu hao
2017-05-22 22:06
591 查看
原题 https://vjudge.net/problem/UVA-12563
对于每移动一步都有两种状态,创建了两个数组来维护状态进行状态转移,也可用一个结构体,这两种状态为结构体的成员函数类似于http://blog.csdn.net/u013480600/article/details/40376143的思路
对于每移动一步都有两种状态,创建了两个数组来维护状态进行状态转移,也可用一个结构体,这两种状态为结构体的成员函数类似于http://blog.csdn.net/u013480600/article/details/40376143的思路
#include <iostream> #include <cstring> #include <algorithm> using namespace std; int time_[5555] = {0}; int dp[255555] = {0}; int main() { int n; while (cin >> n && n != -1) { memset(time_, 0, sizeof(time_)); memset(dp, 0, sizeof(dp)); int index = 0; int len = 0; while (n--) { int v, c; cin >> v >> c; len += v * c; { time_[index++] = v; } while (c--) } for (int i = 0; i < index; i++) { for (int j = len / 2; j >= time_[i]; j--) // for (int j = 0; j <= len / 2; j++) { dp[j] = max(dp[j], dp[j - time_[i]] + time_[i]); } } cout << len - dp[len / 2] << " " << dp[len / 2] << endl; } return 0; }
相关文章推荐
- UVA 12563 Jin Ge Jin Qu hao(多阶段决策问题,DP)
- UVA 12563 Jin Ge Jin Qu hao——01背包
- UVa 12563 - Jin Ge Jin Qu hao(01背包)
- UVa 12563 Jin Ge Jin Qu hao(DP 多种状态表示)
- UVa12563--Jin Ge Jin Qu hao DP(01背包)
- UVA - 12563 Jin Ge Jin Qu hao (01背包)
- UVA - 12563 Jin Ge Jin Qu hao (01背包)
- UVa 12563 (01背包) Jin Ge Jin Qu hao
- UVa 12563 Jin Ge Jin Qu hao(01背包)
- UVA12563 - Jin Ge Jin Qu hao(01背包)
- UVA 12563 - Jin Ge Jin Qu hao (01背包应用)
- UVa 12563 - Jin Ge Jin Qu hao(01背包)
- uva12563 Jin Ge Jin Qu hao(01背包)
- UVA12563 Jin Ge Jin Qu hao(背包问题)
- UVa12563 -Jin Ge Jin Qu hao(DP) 01背包
- UVA 12563 Jin Ge Jin Qu hao(01背包变形:两个背包内容)
- UVA 12563 Jin Ge Jin Qu hao 01背包变形
- UVa 12563_Jin Ge Jin Qu hao
- UVa12563- Jin Ge Jin Qu hao
- UVA 12563 Jin Ge Jin Qu hao(01背包变形:两个条件最优化)