ny325 zb的生日,ny456邮票分你一半
zb的生日
- 描述
- 今天是阴历七月初五,acm队员zb的生日。zb正在和C小加、never在武汉集训。他想给这两位兄弟买点什么庆祝生日,经过 调查,zb发现C小加和never都很喜欢吃西瓜,而且一吃就是一堆的那种,zb立刻下定决心买了一堆西瓜。当他准备把西瓜送给C小加和never的时 候,遇到了一个难题,never和C小加不在一块住,只能把西瓜分成两堆给他们,为了对每个人都公平,他想让两堆的重量之差最小。每个西瓜的重量已知,你 能帮帮他么?
- 输入
- 多组测试数据(<=1500)。数据以EOF结尾
 第一行输入西瓜数量N (1 ≤ N ≤ 20)
 第二行有N个数,W1, …, Wn (1 ≤ Wi ≤ 10000)分别代表每个西瓜的重量
- 输出
- 输出分成两堆后的质量差
- 样例输入
- 
5 
 5 8 13 27 14
- 样例输出
- 
3 
 两个解题的方法是相同的,对于一般的方法,对于“邮票,,“可以AC,但是对于"zb"却超时了,所以我做了优化
 #include<stdio.h> 
 #include<string.h>
 int res[];
 int main()
 {
 int n;
 while(scanf("%d",&n)!=EOF)
 {
 int i,j,sum=,a[],m=;
 memset(res,,sizeof(res));
 for( i = ; i < n ; ++i)
 {
 scanf("%d",&a[i]);
 sum+=a[i];
 }
 res[]=;
 for(i = ;i < n ; ++ i)
 {
 if(m!=sum/) m+=a[i];
 if(m>sum/) m=sum/;
 for( j = m; j >=a[i] ; j--)//在这优化了,以前是遍历到0;
 if(res[j-a[i]]) res[j]=;
 }
 for(i=sum/;!res[i];i--);
 printf("%d\n",sum-*i); }
 return ;
 }
邮票分你一半
- 描述
- 小珂最近收集了些邮票,他想把其中的一些给他的好朋友小明。每张邮票上都有分值,他们想把这些邮票分成两份,并且使这两份邮票的分值和相差最小(就是小 珂得到的邮票分值和与小明的差值最小),现在每张邮票的分值已经知道了,他们已经分好了,你知道最后他们得到的邮票分值和相差多少吗?
- 输入
- 第一行只有一个整数m(m<=1000),表示测试数据组数。
 接下来有一个整数n(n<=1000),表示邮票的张数。
 然后有n个整数Vi(Vi<=100),表示第i张邮票的分值。
- 输出
- 输出差值,每组输出占一行。
- 样例输入
- 
2 
 5
 2 6 5 8 9
 3
 2 1 5
- 样例输出
- 
0 
 2
 #include<iostream> 
 #include<string>
 #include<cstring>
 int b[];
 int a[];
 using namespace std;
 int main()
 {
 int t,n,sum,i,j;
 cin>>t;
 while(t--)
 { sum=;
 memset(b,,sizeof(b));
 cin>>n;
 for(i=;i<n;i++)
 {
 cin>>a[i];sum+=a[i];
 }
 b[]=;int max=;
 for(i=;i<n;i++)
 {
 if(max<sum/)
 max+=a[i];
 if(max>=sum/)
 max=sum/;
 for(j=max;j>=a[i];j--)
 if(b[j-a[i]]) b[j]=;
 }
 for(i=sum/;!b[i];i--);
 {cout<<sum-*i<<endl;}
 /*或者
 for(i=sum/2;i>=0;i--)
 if(b[i]){cout<<sum-2*i<<endl;break;}
 */
 }
 return ;
 }
ny325 zb的生日,ny456邮票分你一半的更多相关文章
- nyoj 456 邮票分你一半
		邮票分你一半 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 小珂最近收集了些邮票,他想把其中的一些给他的好朋友小明.每张邮票上都有分值,他们想把这些邮票分 ... 
- nyoj 邮票分你一半
		邮票分你一半 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 小珂最近收集了些邮票,他想把其中的一些给他的好朋友小明.每张邮票上都有分值,他们想把这些邮票分 ... 
- nyoj 456——邮票分你一半——————【背包思想搜索】
		邮票分你一半 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 小珂最近收集了些邮票,他想把其中的一些给他的好朋友小明.每张邮票上都有分值,他们想把这些邮票分 ... 
- NYOJ-456 邮票分你一半  AC                                                    分类:            NYOJ             2014-01-02 14:33    152人阅读    评论(0)    收藏
		#include<stdio.h> #define max(x,y) x>y?x:y int main(){ int n,x,y; scanf("%d",& ... 
- nyoj zb的生日
		zb的生日 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 今天是阴历七月初五,acm队员zb的生日.zb正在和C小加.never在武汉集训.他想给这两位兄弟买点什么庆祝 ... 
- nyoj zb的生日【背包型DFS/选or不选】
		zb的生日 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 今天是阴历七月初五,acm队员zb的生日.zb正在和C小加.never在武汉集训.他想给这两位兄弟买点什么 ... 
- ACM zb的生日
		zb的生日 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 今天是阴历七月初五,acm队员zb的生日.zb正在和C小加.never在武汉集训.他想给这两位兄弟买点什么 ... 
- zb的生日
		http://acm.nyist.net/JudgeOnline/problem.php?pid=325 zb的生日 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 ... 
- nyoj325 zb的生日(DFS)
		zb的生日 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 今天是阴历七月初五,acm队员zb的生日.zb正在和C小加.never在武汉集训.他想给这两位兄弟买点什么 ... 
随机推荐
- 虚拟机stack全分析
			通过jps -lv 获取到本地的一个JVM实例进程.再通过jstack pid > thread.txt ,把stack trace输出到thread.txt文件中. 2012-08-28 2 ... 
- MySQL auto_increment_increment 和 auto_increment_offset
			参考这一篇文章:(不过我对这一篇文章有异议) http://blog.csdn.net/leshami/article/details/39779509 1:搭建测试环境 create table t ... 
- or1200中载入存储类指令说明
			下面内容摘自<步步惊芯--软核处理器内部设计分析>一书 OR1200中实现的载入存储类指令有8条,每条指令的作用与说明如表9.1所看到的. watermark/2/text/aHR0cDo ... 
- Java中创建实例化对象的几种方式
			Java中创建实例化对象有哪些方式? ①最常见的创建对象方法,使用new语句创建一个对象.②通过工厂方法返回对象,例:String s =String.valueOf().(工厂方法涉及到框架)③动用 ... 
- jquery实现 批量右移
			<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <hea ... 
- 老毛桃pe装机工具备份系统
			电脑故障可以说是难以避免的,误操作或者修改了哪个设置系统就莫名其妙崩溃了.这在日常使用当中并不鲜见,许多用户就会寻求备份系统方法.有没有好的一键备份系统教程可以参考呢?在本篇教程中,就容我跟大家讲讲怎 ... 
- Python 绘图库的使用:matplotlib
			Matplotlib 官方API地址:https://matplotlib.org/ 例子: import matplotlib.pyplot as plt num_list=[1.5,0.6,7.8 ... 
- Eclipse 去掉JavaScript Validator
			http://www.cnblogs.com/wucg/archive/2012/08/06/2625458.html eclipse有些时候,javascript文件总是通不过eclipse的编译校 ... 
- java提高篇之详解内部类
			可以将一个类的定义放在另一个类的定义内部,这就是内部类. 内部类是一个非常有用的特性但又比较难理解使用的特性(鄙人到现在都没有怎么使用过内部类,对内部类也只是略知一二). 第一次见面 内部类我们从外面 ... 
- Python islower() 方法
			描述 Python islower() 方法检测字符串是否由小写字母组成. 相反的方法:isupper() 方法. 语法 islower() 方法语法: S.islower() 参数 无. 返回值 如 ... 
