リストがあります。以下の例のように、新しいリストを作成する必要があります:
[3, 3, 1, 3]
to [3, 3, 3, 1, 1, 3, 3]
。私のコードの何が問題なのか誰にもわかりますか?
add xs
= let
adding (x : xs) as
=
if x == head(xs) && length(xs) >= 1
then adding xs (x : as)
else adding xs (x : x : as)
adding _ as
= as
in
adding xs []
ghci は、空のリストが常にあることを示していますがxs
、私はxs length
制御しています。