2018-04

スポンサーリンク
プロジェクトオイラー

C#でプロジェクトオイラーを解く(問題23「非過剰数和」)

どーも、みつおです。 最初、この問題の意味が不明だったから、かなり解答に時間がかかった。。。 問題 完全数とは, その数の真の約数の和がそれ自身と一致する数のことである. たとえば, 28の真の約数の和は, 1 + 2 + 4 + 7 + ...
プロジェクトオイラー

C#でプロジェクトオイラーを解く(問題22「名前のスコア」)

どーも、みつおです。 基本的にプロジェクトオイラーでクラス使わなくてもいいかと思ってたけど、今回は使った方が可読性が上がると思ったので使用したよ。 問題 5000個以上の名前が書かれている46Kのテキストファイル names.txt を用い...
プロジェクトオイラー

C#でプロジェクトオイラーを解く(問題21「友愛数」)

どーも、みつおです。 友愛数って授業で習いましたっけ?プロジェクトオイラーをやってて初めて聞いた。 問題 d(n) を n の真の約数の和と定義する. (真の約数とは n 以外の約数のことである. ) もし, d(a) = b かつ d(b...
プロジェクトオイラー

C#でプロジェクトオイラーを解く(問題20「各位の数字の和 2」)

どーも、みつおです。 プロジェクトオイラーってたまに、巨大すぎる数値を計算させるときあるよね。 BigIntegerの使い方は、「桁数が非常に大きい数値の計算 – BigIntegerを利用したInt64を超える数値の計算」を参考にすればい...
プロジェクトオイラー

C#でプロジェクトオイラーを解く(問題19「日曜日の数え上げ」)

どーも、みつおです。 問題 次の情報が与えられている. 1900年1月1日は月曜日である. 9月, 4月, 6月, 11月は30日まであり, 2月を除く他の月は31日まである. 2月は28日まであるが, うるう年のときは29日である. うる...
プロジェクトオイラー

C#でプロジェクトオイラーを解く(問題18「最大経路の和 その1」)

どーも、みつおです。 総当たりで解く方法で実装した。 問題 以下の三角形の頂点から下まで移動するとき, その数値の和の最大値は23になる. 3 7 4 2 4 6 8 5 9 3 この例では 3 + 7 + 4 + 9 = 23. 以下の三...
プロジェクトオイラー

C#でプロジェクトオイラーを解く(問題17「数字の文字数」)

どーも、みつおです。 英単語の定義がめんどくさい問題だった。 問題 1 から 5 までの数字を英単語で書けば one, two, three, four, five であり, 全部で 3 + 3 + 5 + 4 + 4 = 19 の文字が使...
プロジェクトオイラー

C#でプロジェクトオイラーを解く(問題16「各位の数字の和」)

どーも、みつおです。 2^1000とかlong型で表せませんからw 今回も「C#でプロジェクトオイラーを解く(問題13「大きな数の足し算」)」と同様にBigIntegerを使う。 BigIntegerの使い方は、「桁数が非常に大きい数値の計...
プロジェクトオイラー

C#でプロジェクトオイラーを解く(問題15「格子経路」)

どーも、みつおです。 格子経路って確か高校のときに習ったよね。20×20とかとんでもない数字は計算してないけど。 問題 2×2 のマス目の左上からスタートした場合, 引き返しなしで右下にいくルートは 6 つある. では, 20×20 のマス...
プロジェクトオイラー

C#でプロジェクトオイラーを解く(問題14「最長のコラッツ数列」)

どーも、みつおです。 コラッツ問題がまだ証明されていないとか夢があるよね。 問題 正の整数に以下の式で繰り返し生成する数列を定義する. n → n/2 (n が偶数) n → 3n + 1 (n が奇数) 13からはじめるとこの数列は以下の...
スポンサーリンク