Как разделить список на половины, используя понимание списка?
например Если у меня есть [1,1,2,2,3,3,4,4,5,5]
, и я хочу только [1,1,2,2,3]
мои попытки до сих пор:
half mylist = [r | mylist!r ; r <- [0..(#mylist div 2)] ] ||does not work
Есть предположения?
[Nb: На самом деле это не Haskell, но похоже. ! используется для списка индексации, а # дает длину)
Редактировать::
Ладно получается, что
half mylist = [r | r <- [mylist!0..mylist!(#mylist div 2)] ]
работает, но только в списке чисел, а не строк. Какие-нибудь подсказки?