【发布时间】:2018-05-10 15:51:44
【问题描述】:
我必须为学校编写一个函数,该函数从一手牌中确定它是否有两对。我应该用部分活动模式来做,但我被困在这里了。
let (|TwoPairs|_|) (x: (string * string) list) =
x
|> List.groupBy snd
|> List.sortByDescending fst
|> List.filter (fun (_, v) -> v |> List.length = 2)
|> List.length = 2
let x2 =
match [("S", "2"); ("S", "6"); ("S", "6"); ("S", "4"); ("S", "2")] with
| TwoPairs p -> sprintf "Two pairs"
| _ -> "Nothing"
我如何将最后一个比较作为一个选项返回,在这种情况下 Some _ 应该是什么?
【问题讨论】:
-
我只想提一下,this 是所有“请帮我完成作业”问题的样子。它预先声明它是用于家庭作业的,所以我们知道有多少帮助是合适的,问题是“这是我到目前为止所做的,但我被困在下一步”。做得好。为这个问题 +1,我希望我能给它一个 +5。
标签: f# functional-programming f#-interactive