input: Write a python function to preprocess a list of numpy arrays by stacking them and scaling the combined data.
  assert (preprocess([np.array([1, 2, 3]), np.array([4, 5, 6])]) == np.array([[0. , 0.2, 0.4], [0.6, 0.8, 1. ]])).all()
  assert (preprocess([np.array([10, 20]), np.array([30, 40])]) == np.array([[0. , 0.25], [0.5 , 0.75]])).all()
  assert (preprocess([np.array([5, 15, 25]), np.array([35, 45, 55])]) == np.array([[0.        , 0.18181818, 0.36363636], [0.54545455, 0.72727273, 0.90909091]])).all()
output: import numpy as np
  
  def preprocess(arrays):
      stacked_array = np.vstack(arrays)
      min_val = stacked_array.min(axis=0)
      max_val = stacked_array.max(axis=0)
      scaled_array = (stacked_array - min_val) / (max_val - min_val)
      return scaled_array