Найти повторяющиеся последовательности в списке

Есть задача определить является ли список чисел законченной последовательностью или нет. Повторяющаяся последовательность должна состоять хотя бы из 2 целых чисел.

Например:

[1, 2, 3, 3, 1, 2, 3, 3] - True - повторяющаяся последовательность 1 2 3 3, закончена [1, 2, 1, 2, 1, 2, 1, 2] - True, 1 2, аналогично

[1, 2, 2, 2, 1, 2, 2, 2, 1] - False, подпоследовательность 1 2 2 2 обрублена. [1, 1, 6, 1, 1, 7] - False, подпоследовательность 1 1 6 1 1 7 появляется только один раз [5, 5, 5] - False, потенциальная последовательность 5, 5 - Обрублена

Написал код но не получается учесть пример такой, как 5, 5, 7, 7 или 1, 1, 6, 1, 1, 7

Помогите пожалуйста с решением, спасибо!

def complete_bracelet(my_list):
 s = "".join(map(str, my_list))
 a = s[:1]
 if len(s) % 2 != 0:
  return False
 try:
  for i in range(len(s)):
   if s.count(a) >= 2:
    a += s[i+1]
  return (len(s) % len(a[:-1]) == 0) and (s.count(a[:-1]) > 1)
 except:
  return False

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