Найдите индексную пару, смежную друг с другом, имеющую наименьшую разницу.У соседних индексных пар нет номера, строго ставьте их в массиве - PullRequest
0 голосов
/ 21 мая 2019

Пара индексов P (A, B) смежна, если в массиве нет значений, которые находятся точно между P [A] и P [B] в массиве.Как найти пару индексов с минимальной разницей min (BA) в python

Я попробовал код ниже, но получил сообщение о том, что список пуст.В чем здесь ошибка?

def solution(a):
   ind=[]
   for i in range(0,len(a)):
   A=a[i]
       if (A+1) not in a:
           if (A+2) not in a:
                   ind.append(i)
                   ind.append(a.index(A+2))  

   ind1=min(ind)
   ind2=ind[ind1+1]
   return(ind1-ind2)  


a=[0,3,3,7,5,3,11,1]
Ans=solution(a)

Ожидаемый ответ 1, потому что индексы пары (1,2) имеют наименьшую разницу.Таких пар индексов много, и мне нужно найти пару с наименьшей разницей и вернуть это значение

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...