如何使用1111到6666之间的元素在F#中创建一个Set,而没有任何值为0,7或更高。
E.g。 [1111,1112,1113,1114,1115,1116,1121]
我想把它变成一套。
提前致谢
答案 0 :(得分:6)
您可以使用序列理解:
let values = seq {
for i in 1110 .. 10 .. 6660 do
for j in 1 .. 6 do
yield i + j
}
并使用Set.ofSeq
创建一个集合,例如
let s = Set.ofSeq values
答案 1 :(得分:1)
必须有一个比以下更简单的方法:
let values = seq {
for a in 1000 .. 1000 .. 6000 do
for b in 100 .. 100 .. 600 do
for c in 10 .. 10 .. 60 do
for d in 1 .. 6 do
yield a + b + c + d
}