F# 第二出租车号码发生器

F# 第二出租车号码发生器,f#,number-theory,F#,Number Theory,我试图对第二个出租车号码进行一系列猜测。我要做的是对有限序列中的一系列整数调用尝试函数。在评论中,我有两个关于实施的问题。 出租车号码,如果你想知道的话,是满足2个唯一立方体的n个唯一集合的2个唯一立方体之和的最小号码。Ta(2)是1729 [] 让主argv= 让我们尝试(开始:int)= 让停止=开始+20 let integerList=[start..stop] let list=list.init 3(乐趣x->integerList.[x]) //有没有一种简单的方法可以使用inte

我试图对第二个出租车号码进行一系列猜测。我要做的是对有限序列中的一系列整数调用尝试函数。在评论中,我有两个关于实施的问题。 出租车号码,如果你想知道的话,是满足2个唯一立方体的n个唯一集合的2个唯一立方体之和的最小号码。Ta(2)是1729

[]
让主argv=
让我们尝试(开始:int)=
让停止=开始+20
let integerList=[start..stop]
let list=list.init 3(乐趣x->integerList.[x])
//有没有一种简单的方法可以使用integerList的随机索引初始化列表?
让立方体x=x*x*x
让newlist=list |>list.map(乐趣x->Cube x)
设partitionList(x:List)(y:int)=List.sum[x[y];x[y+1]]
让intLIST=[0..2]
让partitionList'=[对于intLIST中的i,不产生partitionList newlist i]
设x=Set.of列表分区列表'
设y=Set.of列表分区列表'
//我将尝试使用某种相等运算符来确定这两个集合是否相等,这可以告诉我,根据弱化的定义,我们是否真的找到了出租车号码。
System.Console.Write(列表)
System.Console.Write(newlist)
设rnd=System.Random()
//我的主要问题是如何将随机数转换为整数,以便在函数尝试开始时使用?
System.Console.ReadKey()|>忽略
printfn(“%A”)argv
0

使用另一个列表的随机索引初始化列表的脏方法:

let randomIndexes count myList =
    let rand = System.Random()
    seq {
        for n = 1 to count do
            yield rand.Next(List.length myList) }
    |> Seq.distinct 
    //|> Seq.sort // if you need them sorted
    |> List.ofSeq

let result = randomIndexes 5 [3;2;4;5]
printfn "%A" result

使用另一个列表的随机索引初始化列表的脏方法:

let randomIndexes count myList =
    let rand = System.Random()
    seq {
        for n = 1 to count do
            yield rand.Next(List.length myList) }
    |> Seq.distinct 
    //|> Seq.sort // if you need them sorted
    |> List.ofSeq

let result = randomIndexes 5 [3;2;4;5]
printfn "%A" result

我发现很难理解你在问什么。你可以吗?你不需要把随机数转换成整数。使用
让rnd=System.Random()。下一步(9)
将给出从0到8的伪随机数。这是三个不同的问题。最好每个帖子问一个问题。我发现很难理解你在问什么。你可以吗?你不需要把随机数转换成整数。使用
让rnd=System.Random()。下一步(9)
将给出从0到8的伪随机数。这是三个不同的问题。最好每个帖子问一个。