見るとカプレカ数には定義1と定義2の2つの定義があります。Number)とは、次のいずれかで定義される整数である。桁を並べ替えて最大にしたものから最小にしたものの差を取ったとき、元の値に等しくなるものここでは、定義1のカプレカ数を求めています。297$となるので、297はカプレカ数ということになります。この定義1にも2つのバージョンがあるらしく、その定義が微妙に異なっています。4879はカプレカ数かどうかについて考えてみます。この操作によって元の値に等しくなる数をカプレカ数と呼ぶ。カプレカ数ではない、ということになります。A006886)と載っているんですよね。定義1でも、2つの解釈があるということみたいです。10)を採用しています。カプレカ数と判断してしまうので注意です。カプレカ数なんですね。巡回数(http://gushwell.ldblog.jp/archives/51949651.html)初期バージョン最初に書いたカプレカ数を求めるC#のコードです。}使い方はこんな感じ。{k.Part2}");改良バージョンどうも、Substringを使っているのが気に入らないし、Take(50)とかすると結構時間がかかります。いうことで、少し改良してみました。数学の問題らしくSubstring()やToString()などの文字列操作を使わず使わずに書いてみました。}僕の手元のPCでは、約4倍弱の速度アップが認められました。GitHubでコードを公開しています。(最初の50個)前述のコードを使い、最初の50個のカプレカ数を求めるコード書いてみました。Pageで公開したものを加筆・修正したものです。upLoginユーザーは見つかりませんでした。