| 123456789101112131415161718192021222324252627 | 
							- func arrayPairSum(nums []int) int {
 
- 	set := [20001]int{}
 
- 	for _, i := range nums {
 
- 		set[i+10000]++
 
- 	}
 
- 	sum, flag := 0, 1
 
- 	for i, val := range set {
 
- 		if val != 0 {
 
- 			if val&1 == 0 {
 
- 				sum += val / 2 * (i - 10000)
 
- 			} else {
 
- 				sum += (val + flag) / 2 * (i - 10000)
 
- 				flag ^= 1
 
- 			}
 
- 		}
 
- 	}
 
- 	return sum
 
- }
 
- func arrayPairSumSort(nums []int) int {
 
- 	sort.Ints(nums)
 
- 	sum := 0
 
- 	for i := len(nums) - 2; 0 <= i; i -= 2 {
 
- 		sum += nums[i]
 
- 	}
 
- 	return sum
 
- }
 
 
  |