Найти - Пользователи
Полная версия: Помогите решить задачу по одномерному масиву.
Начало » Центр помощи » Помогите решить задачу по одномерному масиву.
1
Artem2204
Задание: с массива удалить самую длинную цепочку парных элементов. Пример: с массива A: 4 1 4 2 1 2 4 6 должен получиться массив A: 4 1 4 2 1 (самая длинная цепочка парных чисел содержит элементы с 6 по 8: 2 4 6).
ZerG
На чем застряли?
Artem2204
Как задать и потом удалить самую длинную цепочку парных чисел?
py.user.next
Надо сначала найти её, а для этого надо пройти весь массив до конца, запоминая начало и длину самой длинной цепочки в каждый момент времени (на каждом шаге цикла).
vic57
 >>> lst = [1, 3, 4, 2, 4, 6]
>>> s = [str(i) for i in lst]
>>> s
['1', '3', '4', '2', '4', '6']
>>> s = ' '.join(s)
>>> s
'1 3 4 2 4 6'
>>> tmp = '2 4 6' #template
>>> if tmp in s: s = s.replace(tmp,'')
>>> s
'1 3 4 '
>>> l = s.split(' ')
>>> out = []
>>> for i in l:
	try: out.append(int(i))
	except: pass
>>> out
[1, 3, 4]
>>> 
ну а как темплейт задать - сам думай
vic57
после проводов старого года пришел алгоритм
 >>>l = [1, 3, 4, 7, 2, 4, 6, 9]
>>> delta = []
>>> for i in xrange(1,len(l)): delta.append(l[i] -l[i-1])
>>> delta
[2, 1, 3, -5, 2, 2, 3]
>>> 
новый год прошел …
выделить последовательность 2,2,2… макс.длины и привязать к индексу массива
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB