challenge 重複する要素を取り除く

与えられたリストxsの中から、 2回以上出現するものを全部取り除いてください。

サンプル入力
[3, 1, 4, 1, 5, 9, 2, 6, 5]
サンプル出力
[3, 4, 9, 2, 6]

これはアレイのuniqの派生問題です。 リストとかアレイという言葉は言語によってまちまちの意味で使われているので、 「配列のようなもの」という漠然とした意味にとって構いません。

Posted feedbacks - Arc

Arcです。
(uniq-only '(3 1 4 1 5 9 2 6 5))
;=> (3 4 9 2 6)
1
2
3
(def uniq-only (lst)
  (rem (fn (item) (mem item (cdr:mem item lst))) 
       lst))

Arcです。
[]記法が使えるのを忘れてました。短いのは良いとは思えど…。
1
2
(def uniq-only (lst)
  (rem [mem _ (cdr:mem _ lst)] lst))

Index

Feed

Other

Link

Pathtraq

loading...