import math


def closestPoints( array ):
    """
    V poli najde dva vzájemně nejbližší body a vrátí jejich indexy.

    Parametry:
    ----------
        array: list
            Pole s body.

    Vrací:
    ------
        list
            Pole se indexy dvou vzájemně nejbližších bodů.

    """

    a_index = 0
    b_index = 0
    min_dist = -1

    # Pro každý prvek pole
    for x in range( len(array) ):
        # Projde všechny prvky pole ještě jednou
        for y in range( len(array) ):
            
            # Nebudeme porovnávat vzdálenost prvku se sebou samým
            if x == y:
                continue

            # Vzdálenost dvou bodů
            d  = math.sqrt( (array[x][0] - array[y][0])**2 + (array[x][1] - array[y][1])**2 )
            
            # Pokud jde o první vzdálenost
            if min_dist == -1:

                # Rovnou se použije
                min_dist = d
                a_index = x
                b_index = y

                continue

            # ... jinak
            else:

                # Porovnáme s posledně uloženou vzdálenosti
                if min_dist > d:
                    
                    # ... a data uložíme jen pokud jsme našli lepší shodu. 
                    min_dist = d
                    a_index = x
                    b_index = y

    return a_index, b_index