Помогите с задачой, пожалуйста! Все никак не получается(

Два ближайших числа Дан список целых чисел, содержащий как минимум два элемента. Найдите в нём два ближайших элемента (то есть два элемента с минимальной абсолютной разностью). Изменять список при этом нельзя.

Входные данные

В единственной строке входных данных задан список целых чисел, не превосходящих по модулю 231.

Выходные данные

Программа должна вывести два числа: индексы двух элементов списка, абсолютная величина разности которых минимальна.

Примеры Ввод

7 0 4 2 5 9

Вывод

2 4

Вот мой код:

a=list(map(int, input().split()))
ans_i=0
ans_j=1
for i in range(len(a)):
    for j in range(i+1, len(a)):
        if abs(a[i]-a[j])<abs(a[ans_i]-a[ans_j]):
        ans_i=i
        ans_j=j
print(ans_i,ans_j)

Где ошибка?


Ответы (1 шт):

Автор решения: GrDEV

А если вот так?

a=list(map(int, input().split()))
ans_i=0
ans_j=1
for i in range(len(a)):
    for j in range(i+1, len(a)):
        if abs(a[i]-a[j])<abs(a[ans_i]-a[ans_j]):
            ans_i=i
            ans_j=j
            print(ans_i,ans_j)

Обратите внимание на пробелы.

→ Ссылка