HDU 5680 zxa and set
2016-05-17 14:23
190 查看
zxa and set
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 189 Accepted Submission(s): 153
Problem Description
zxa has a set A={a1,a2,⋯,an},
which has n elements
and obviously (2n−1) non-empty
subsets.
For each subset B={b1,b2,⋯,bm}(1≤m≤n) of A,
which has m elements,
zxa defined its value as min(b1,b2,⋯,bm).
zxa is interested to know, assuming that Sodd represents
the sum of the values of the non-empty sets, in which each set B is
a subset of A and
the number of elements in B is
odd, and Seven represents
the sum of the values of the non-empty sets, in which each set B is
a subset of A and
the number of elements in B is
even, then what is the value of |Sodd−Seven|,
can you help him?
Input
The first line contains an positive integer T,
represents there are T test
cases.
For each test case:
The first line contains an positive integer n,
represents the number of the set A is n.
The second line contains n distinct
positive integers, repersent the elements a1,a2,⋯,an.
There is a blank between each integer with no other extra space in one line.
1≤T≤100,1≤n≤30,1≤ai≤109
Output
For each test case, output in one line a non-negative integer, repersent the value of |Sodd−Seven|.
Sample Input
3
1
10
3
1 2 3
4
1 2 3 4
Sample Output
10
3
4
Hint
For the first sample, $A=\{10\}$, which contains one subset $\{10\}$ in which the number of elements is odd, and no subset in which the number of elements is even, therefore $S_{odd}=10,S_{even}=0,|S_{odd}-S_{even}|=10$.
For the second sample, $A=\{1,2,3\}$, which contains four subsets $\{1\},\{2\},\{3\},\{1,2,3\}$ in which the number of elements is odd, and three subsets $\{1,2\},\{2,3\},\{1,3\}$ in which the number of elements is even, therefore $S_{odd}=1+2+3+1=7,S_{even}=1+2+1=4,|S_{odd}-S_{even}|=3$.
Source
BestCoder Round #83
Recommend
wange2014 | We have carefully selected several similar problems for you: 5689 5688 5687 5686 5685
给你一个集合,让求这个集合的子集中有奇数个元素的每个子集的中最小的元素之和减去有偶数个元素的每个子集的中最小的元素之和。
刚开始采用直接计算的方法,无论如何就是不对,后来才发现他们的和相互抵消,最后就是集合中的最大值。。。。。。。
#include<stdio.h> #include<string.h> #include<algorithm> using namespace std; int main() { int t,n,i,a[11000]; scanf("%d",&t); while(t--) { scanf("%d",&n); for(i=0;i<n;i++) scanf("%d",&a[i]); sort(a,a+n); printf("%d\n",a[n-1]); } return 0; }
相关文章推荐
- jqgrid快速入门之三:单元格输入文字的获取
- JavaScript基础——在HTML中使用JavaScript
- iOS 拨打电话的三种方法
- c++中vector的用法详解
- 使用sed过滤提取文本中的信息
- Chrome Developer Tools:Network Panel说明
- js中Array对象常用方法
- Leetcode 283 Move Zeroes
- ROS中service 与action 的区别
- wireshark
- 数组------荷兰国旗问题(颜色排序)
- Mysql多实例安装
- 架构漫谈(一):什么是架构?
- 分词词云 logistic相关研究 2016.05.16回顾
- Settings.apk修改
- HDU 2665 Kth number 划分树
- UISegmentedControl的用法
- part1:15-安装Linux系统到开发板
- iOS 计时器 单例 GCD 切换控制器倒计时继续读秒
- ansible playbook 学习