Просто чтобы поставить мою шляпу на ринг ... Так как шаблон
xexxexxex
(где e
s - это заполнители для элементов исходного списка), вы можете сделать это еще одним способом.вывод производится путем помещения двух x
s между каждым элементом и оборачивания форзацев вручную.Итак:
wrap x es = x <> intercalate (x <> x) es <> x
Одна небольшая, но приятная особенность этого переписывания заключается в том, что для входных списков длины n это вызовет только n + 2 вызова (<>)
, а не 3n-1, как в ответе игрока.