vijos P1071新年趣事之打牌
来源:互联网 发布:国民经济数据 编辑:程序博客网 时间:2024/05/21 17:24
01背包,网上看了好些记录方法都不太喜,自己就写了个
#include <stdio.h>#include <string.h>int dp[100005], a[105], vis[100005], put[105];int main(){int n, i, j, v, sum, flag, tp, ok;scanf("%d %d", &v, &n);sum = 0;for(i = 0;i < n;i++){scanf("%d", &a[i]);sum += a[i]; }v = sum - v;flag = 0;memset(vis, -1, sizeof(vis));for(i = 0;i < n;i++)for(j = v;j >= a[i];j--){if(dp[j - a[i]] + a[i] > dp[j]){dp[j] = dp[j - a[i]] + a[i];vis[j] = i;}else if(dp[j - a[i]] + a[i] == dp[j]&&dp[j] == j&&j == v)flag = 1;}if(dp[v] != v) printf("0\n");else if(flag) printf("-1\n");else{tp = v;ok = 0;while(vis[tp] != -1){put[ok++] = vis[tp] + 1;tp = tp - a[vis[tp]];}for(i = ok - 1;i >= 0;i--)printf("%d%c", put[i], i==0?'\n':' ');}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
- Vijos P1072-新年趣事之债务【物理】
- Vijos 1072题:新年趣事之债务
- 编程之美2.4——“1”的数目
- bundle update rails 报错处理
- 软件工程的文档
- Scala开发环境搭建和HelloWorld解析
- Java学习从入门到精通Java Learning Path (一)、工具篇
- vijos P1071新年趣事之打牌
- [随手记]ScrollView嵌套ExpandableListView展开问题
- Spring 定时任务之 @Scheduled cron表达式
- jquery base64 加密解密 request 文本字段传输
- 排序算法
- Android常用工具类总结
- Struts2的分页处理
- SSM框架整合例子
- IOS - 定时器