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.
  
  def divide_in_two_equal_parts(lst):
      target = sum(lst) // 2
      part1 = []
      part2 = []
      left_sum = 0
      right_sum = 0
      
      for num in lst:
          if left_sum <= right_sum:
              left_sum += num
              part1.append(num)
          else:
              right_sum += num
              part2.append(num)
           
      return part1, part2
  
  part1, part2 = divide_in_two_equal_parts([2, 3, 4, 5, 6, 7])
  
  assert part1 == [2, 3, 4, 5]
  assert part2 == [6, 7]
  
  assert divide_in_two_equal_parts([1, 1, 1, 1, 1]) == ([1, 1, 1], [1, 1])
  assert divide_in_two_equal_parts([10, 10]) == ([10], [10])
  assert divide_in_two_equal_parts([]) == ([], [])
  
  part1, part2 = divide_in_two_equal_parts([2, 3, 4, 5, 6, 7])
  print("Part 1:", part1)
  print("Part 2:", part2)
output: def divide_in_two_equal_parts(lst):
      lst.sort(reverse=True)
      target = sum(lst) // 2
      part1 = []
      part2 = []
      sum1 = 0
      sum2 = 0
      
      for num in lst:
          if sum1 + num <= target:
              part1.append(num)
              sum1 += num
          else:
              part2.append(num)
              sum2 += num
      
      return part1, part2