首页 > 试题广场 >

集合划分问题

[编程题]集合划分问题
  • 热度指数:810 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解

给定一个数组,每个元素范围是0~K(K < 整数最大值2^32),将该数组分成两部分,使得 |S1- S2|最小,其中S1和S2分别是数组两部分的元素之和。



输入描述:
数组元素个数N(N 大于1但不超过 10, 000, 000)

数组中N个元素(用空格分割)


输出描述:
|S1- S2|的值
示例1

输入

5
2 4 5 6 9

输出

0
示例2

输入

4
1 1 1 999

输出

996