我正在研究 n queens 问题,我的类型签名是
queens :: [Int] -> Bool
输入是皇后的行号列表。我不知道如何遍历列表并将每个值与长度 xs 进行比较。
你可以为此使用 any
函数,如果列表中至少有一个元素满足给定的谓词(在本例中为 Int -> Bool
函数(,它将返回True
。
queens xs = any (x -> x > length xs) xs