input: Write a python function to cluster a set of 2D points based on the nearest point using Euclidean distance.
  assert len(cluster_points(np.array([[0, 0], [1, 1], [2, 2], [3, 3]]))) == 4
  assert len(cluster_points(np.array([[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]]))) == 5
  assert len(cluster_points(np.array([[0.1, 0.1], [0.2, 0.2], [0.3, 0.3]]))) == 3
output: def cluster_points(points):
      import numpy as np
      from scipy.spatial.distance import cdist
  
      def find_nearest_point_idx(point, points):
          distances = cdist([point], points, metric='euclidean')
          nearest_idx = np.argmin(distances[0])
          return nearest_idx
  
      clusters = []
      for point in points:
          nearest_idx = find_nearest_point_idx(point, points)
          clusters.append(points[nearest_idx])
  
      return clusters