2 つのリストがあります。1 つのリストにはいくつかのランダム データが含まれ、もう 1 つのリストには削除する必要がある最初のリストのインデックスが含まれます。
たとえば、次の 2 つのリストを考えてみましょう。
let a = [3,4,5,6,6,7,8]
let b = [1,3]
次に、結果の出力は になります[3,5,6,7,8]
。番号 4 と 6 は、それぞれインデックス位置 1 と 3 にあるため、削除されます。
私は Haskell を初めて使用するので、解決策を見つけるのが難しいと感じています。
更新:次のコードはそれを機能させます
import Data.List
dele :: Eq a => [a] -> [Int] -> [a]
dele [] _ = []
dele x [] = x
dele x (y:ys) = dele (delete (x !! y) x) ys
map/fold way で解決する方法はありますか?