我被赋予了一项任务,可以从项目列表中对哪些项目进行排序 不包含在其他列表中。
在这种情况下,它的NI号码没有银行账户。
类型如下:
type NI = Int
type Age = Int
type Balance = Int
type Person = (NI, Age, Balance)
type Bank = [Person]
type Market = [Bank]
type Pop = [NI]
bankFree功能如下:
bankFree :: Pop -> Market -> Pop
bankFree a b = filter (map op3 b) a
where
op3 [(x, y, z)] = x
我完全不知道从哪里开始。我知道我必须处理Pop列表才能从该列表中删除map操作中的元素。我试图适应notElem并执行一系列其他不同的测试,但没有用。
非常感谢任何帮助。
答案 0 :(得分:2)
编程的诀窍在于弄清楚如何将复杂问题分解为更简单的问题。如果你以相反的方式练习,可能更容易获得这种直觉 - 构建从解决方案到简单问题的复杂问题的解决方案。这样,您就可以感受到最有效地简化问题的方式。
这个问题很容易分解。让我们从一个最简单的问题开始,向上扩展:
就是这样。