input: Write a function to divide a given list of numbers into two equal parts such that the difference between the sum of the two parts is minimum. If the list contains an odd number of elements, the two parts may have one more or one less element than the other. Return the two parts as a tuple.
  assert divide_in_two_equal_parts([2, 3, 4, 5, 6, 7])==([2, 3, 7], [4, 5, 6])
  assert divide_in_two_equal_parts([1, 2, 3, 4, 5])==([1, 2, 5], [3, 4])
  assert divide_in_two_equal_parts([10, 20, 30, 40])==([10, 40], [20, 30])
  assert divide_in_two_equal_parts([7, 8, 9, 10, 11])==([7, 10, 11], [8, 9])
  assert divide_in_two_equal_parts([])==([], [])
output: def divide_in_two_equal_parts(nums):
      nums.sort()
      part1, part2 = [], []
      sum1, sum2 = 0, 0
      
      for num in reversed(nums):
          if sum1 <= sum2:
              part1.append(num)
              sum1 += num
          else:
              part2.append(num)
              sum2 += num
      
      return (part1, part2)