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 it is not possible to divide the list into two equal parts due to an odd number of elements, ensure that the larger part has one more element than the smaller part. If the given list is empty, return two empty lists.
  assert divide_in_two_equal_parts([2, 3, 4, 5, 6, 7])==([2, 3, 6], [4, 5, 7])
  assert divide_in_two_equal_parts([1, 2, 3, 4, 5])==([1, 2, 4], [3, 5])
  assert divide_in_two_equal_parts([1, 1, 1, 1])==([1, 1], [1, 1])
  assert divide_in_two_equal_parts([10, 20, 30])==([10, 20], [30])
  assert divide_in_two_equal_parts([])==([], [])
output: def divide_in_two_equal_parts(nums):
      if not nums:
          return [], []
      
      nums.sort()
      half = (len(nums) + 1) // 2
      part1 = nums[:half]
      part2 = nums[half:]
      
      return part1, part2