Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- let book = Map [(1, ["daniel"; "martin"; "bella"]); (2, ["daniel"; "martin"]); (3, ["bella"])];;
- let words = book |> Map.toList |> List.map snd |> List.concat |> Set.ofList
- let inverseBook =
- [ for word in words do
- let pages =
- book
- |> Map.toList
- |> List.choose (fun (page, pageWords) -> if List.exists ((=) word) pageWords then Some page else None)
- yield word, pages ]
Add Comment
Please, Sign In to add comment