|Vijos|动态规划|P1071 新年趣事之打牌
来源:互联网 发布:9377端口烈焰手游官网 编辑:程序博客网 时间:2024/05/22 06:59
https://vijos.org/p/1071
01背包+输出最优解,在丢失牌的重量中进行01背包
#include<iostream>#include<cstdio> #include<cstring> #include<algorithm> #define ms(i,j) memset(i, j, sizeof(i)); using namespace std;int w[105];int f[100005];int g[100005];int vi[105];int TotalW, n;void pri(int t){if (t==0) return ;for (int i=n;i>0;i--){if (!vi[i]&&t-w[i]==g[t]){vi[i] = true;pri(g[t]);printf("%d ", i);}}}int main() {scanf("%d%d", &TotalW, &n);TotalW = -TotalW;for (int i=1;i<=n;i++){scanf("%d", &w[i]);TotalW += w[i]; }ms(f,0); ms(g,0); f[0] = 1;for (int i=1;i<=n;i++)for (int j=TotalW;j>=w[i];j--){f[j] += f[j-w[i]];if(f[j-w[i]] > 0)g[j] = j-w[i];}ms(vi,0);if (f[TotalW]>1) printf("-1\n");else if (f[TotalW]==0) printf("0\n");else pri(TotalW); return 0; }
0 0
- 【动态规划】Vijos P1071 新年趣事之打牌
- |Vijos|动态规划|P1071 新年趣事之打牌
- Vijos P1071 新年趣事之打牌(动态规划,背包,统计方案数)
- Vijos - P1071 新年趣事之打牌
- vijos P1071新年趣事之打牌
- Vijos P1071新年趣事之打牌
- Vijos P1071 新年趣事之打牌
- vijos 1071 新年趣事之打牌
- 新年趣事之打牌
- 新年趣事之打牌
- 新年趣事之打牌
- 1071新年趣事之打牌——vijos
- 新年趣事之打牌_DP
- vijosP1071 新年趣事之打牌
- 1071.新年趣事之打牌
- Vijos 1069 新年趣事之红包(动态规划最短路)
- 新年趣事之债务vijos
- Vijos P1072-新年趣事之债务【物理】
- Gradle 运行慢的解决方法
- 我的第一个项目
- dynamicreport2
- 盒切在医学影像处理中的应用
- 【工具使用】:使用Idea创建Java程序
- |Vijos|动态规划|P1071 新年趣事之打牌
- 练习题——Gson解析、利用JDBC连接数据库进行数据的存取及查询等的综合
- CentOS 基本操作
- 浅析 - Sqlite的用法和示例
- mysql为啥有时候那么慢
- 鼠标,键盘监听器(Java)
- sudo免密码
- 【Linux开发】OpenCV在ARM-linux上的移植过程遇到的问题2---CMAKE配置问题
- 半夏花开,斜日向晚