我怎么称呼一个元组列表的和?

时间:2018-11-13 15:53:17

标签: function f# sum

我做了一个元组列表,但是我似乎找不到列表的总和。我需要为总和创建函数,还是可以在总和代码中调用每个列表fst snd

let (startBoard : board) = ([0; 3; 3; 3; 3; 3], [0; 3; 3; 3; 3; 3])

如何找到列表的总和?我试图制作一个求和函数并调用fstsnd,但似乎无法使其工作……

let sum1 (fst : int list) : int = 
let s = List.sum fst

希望我能表明自己的意思:)

2 个答案:

答案 0 :(得分:2)

fst是一个内置函数,它返回大小为2的元组的第一项。您的示例sum1函数将其第一个参数命名为fst,这可能不是您想要的。

尝试这样的事情:

let sum1 (startBoard : board) = List.sum (fst startBoard)

借助咖喱的力量,可以缩短这一时间:

let sum1 = List.sum << fst

答案 1 :(得分:2)

不知道确切的“木板”类型是什么,但这应该可行。

let sum (b: board) = List.sum (fst b), List.sum (snd b)