Comment detail

ダブル完全数 (Nested Flatten)
F#の特殊構文を使っているのでOCamlでは動きません。
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
module Main =
    struct
        let divSig n =
            let rec iter res = function
                | d when d > n/2 -> res
                | d when n%d = 0 -> iter (res+d) (d+1)
                | d -> iter res (d+1) in
            iter 0 1
        let dp = { for i in {1 .. 10000} when (2*i) = divSig(i) -> i }
    end;;

Index

Feed

Other

Link

Pathtraq

loading...