邮票分你一半

时间限制:1000 ms  |  内存限制:65535 KB
难度:3

描述
小珂最近收集了些邮票,他想把其中的一些给他的好朋友小明。每张邮票上都有分值,他们想把这些邮票分成两份,并且使这两份邮票的分值和相差最小(就是小珂得到的邮票分值和与小明的差值最小),现在每张邮票的分值已经知道了,他们已经分好了,你知道最后他们得到的邮票分值和相差多少吗?
输入
第一行只有一个整数m(m<=1000),表示测试数据组数。
接下来有一个整数n(n<=1000),表示邮票的张数。
然后有n个整数Vi(Vi<=100),表示第i张邮票的分值。
输出
输出差值,每组输出占一行。
样例输入
2
5
2 6 5 8 9
3
2 1 5
样例输出02
【思路】我们可以先算出邮票的总价值,然后取总价值的一般作为包,然后转换为01背包问题。
AC代码:
#include<cstdio>
#include<math.h>
#include<string.h>
#include<algorithm>
using namespace std;
int main()
{int n, m;scanf("%d", &m);while(m--){int sum = 0, f[100005], v[100005];scanf("%d", &n);memset(f, 0, sizeof(f));//必不可少 for(int i = 0; i < n; i++){scanf("%d", &v[i]);sum += v[i];}int sum2 = sum;sum /= 2;int len = 1; for(int i = 0; i < n; i++){for(int j = sum; j >= v[i]; j--)f[j] = max(f[j], f[j-v[i]] + v[i]);}printf("%d\n", sum2 - 2*f[sum]);} return 0;
}

转载于:https://www.cnblogs.com/123tang/p/5866570.html

nyoj 456 邮票分你一半【01背包】相关推荐

  1. NYOJ 456 邮票分你一半

    邮票分你一半 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述 小珂最近收集了些邮票,他想把其中的一些给他的好朋友小明.每张邮票上都有分值,他们想把这些邮票分成两份,并且使 ...

  2. NYOJ 456 邮票分你一半

    描述      小珂最近收集了些邮票,他想把其中的一些给他的好朋友小明.每张邮票上都有分值,他们想把这些邮票分成两份,并且使这两份邮票的分值和相差最小(就是小珂得到的邮票分值和与小明的差值最小),现在 ...

  3. 【nyoj-456】 邮票分你一半 (dp,0-1背包的中点问题)

    题干: 邮票分你一半 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述 小珂最近收集了些邮票,他想把其中的一些给他的好朋友小明.每张邮票上都有分值,他们想把这些邮票分成两份 ...

  4. 【CCCC】L3-001 凑零钱 (30分),,01背包路径打印

    problem L3-001 凑零钱 (30分) 韩梅梅喜欢满宇宙到处逛街.现在她逛到了一家火星店里,发现这家店有个特别的规矩:你可以用任何星球的硬币付钱,但是绝不找零,当然也不能欠债.韩梅梅手边有 ...

  5. noj 邮票分你一半z的生日

    点击打开链接 点击打开链接两道题其实是一样的就是用平分后的01背包问题:让一方尽最大可能达到sum/2那这个差值就会转化成最小,而我们想到的就是01背包问题. #include<stdio.h& ...

  6. NYOJ-邮票分你一半(dp)

    邮票分你一半 描述: 小珂最近收集了些邮票,他想把其中的一些给他的好朋友小明.每张邮票上都有分值,他们想把这些邮票分成两份,并且使这两份邮票的分值和相差最小(就是小珂得到的邮票分值和与小明的差值最小) ...

  7. 【Codeforces 741 B. Arpa's weak amphitheater and Mehrdad's 】+ 并查集 + 01背包

    B. Arpa's weak amphitheater and Mehrdad's valuable Hoses time limit per test 1 second memory limit p ...

  8. 7-1 0-1背包 (50分)

    7-1 0-1背包 (50分) 给定n(n<=100)种物品和一个背包.物品i的重量是wi,价值为vi,背包的容量为C(C<=1000).问:应如何选择装入背包中的物品,使得装入背包中物品 ...

  9. NYOJ 860 又见01背包

    有n个重量和价值分别为wi 和 vi 的 物品,从这些物品中选择总重量不超过 W  的物品,求所有挑选方案中物品价值总和的最大值. 1 <= n <=100 1 <= wi < ...

最新文章

  1. r语言 调用c windows,R:window()函数
  2. FICO 最常用配置表
  3. 【杭州站参会指南】神策 2020 数据驱动用户大会,邀您面基!
  4. Android商城开发系列(一)——开篇
  5. 数据结构专题二:2.6链表删除结点
  6. oracle除了什么之外,Oracle翻译
  7. ubuntu 安装osx 主题 转自linux公社
  8. 小武与剑指offer的恩怨情仇
  9. 情感原因识别相关论文整理
  10. Workbench螺栓连接的模拟方法
  11. 惊!一文看懂Java NIO读写文件
  12. Mac PS CC2018详细软件按照教程
  13. tdengine和mysql区别_TDEngine Game Framework
  14. C++11 文件读写(vs2019 安装配置boost库)
  15. vue 数字滚动count-to插件,支持小数(包含vue3,网上整理)
  16. ElasticSearch实现商品搜索与聚合分析
  17. 06 Jewels and Stones
  18. C语言中数据放在哪里
  19. 不同类型的固态继电器
  20. 开通斐讯橙汁plus会员 获取白金奖励计划

热门文章

  1. 银行工作中有哪些需要注意的事?
  2. 26岁宝妈去汤臣倍健面试兼职工作
  3. 吃冻梨对人会有什么好处?
  4. 金银花跟黄芪泡水有什么功效?
  5. 适合上班族的两种兼职
  6. 为什么手机用久了,就不那么流畅了,啥原因?
  7. SpringBoot学习总结(个人笔记)
  8. CSU计算机图形学复习
  9. Java面向对象和类
  10. TimePickerView(日期选择器)