Помогите с задачой, пожалуйста! Все никак не получается(
Два ближайших числа Дан список целых чисел, содержащий как минимум два элемента. Найдите в нём два ближайших элемента (то есть два элемента с минимальной абсолютной разностью). Изменять список при этом нельзя.
Входные данные
В единственной строке входных данных задан список целых чисел, не превосходящих по модулю 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)
Обратите внимание на пробелы.