プロジェクトオイラー C#でプロジェクトオイラーを解く(問題23「非過剰数和」) どーも、みつおです。 最初、この問題の意味が不明だったから、かなり解答に時間がかかった。。。 問題 完全数とは, その数の真の約数の和がそれ自身と一致する数のことである. たとえば, 28の真の約数の和は, 1 + 2 + 4 + 7 + ... 2018.04.24 プロジェクトオイラー
プロジェクトオイラー C#でプロジェクトオイラーを解く(問題22「名前のスコア」) どーも、みつおです。 基本的にプロジェクトオイラーでクラス使わなくてもいいかと思ってたけど、今回は使った方が可読性が上がると思ったので使用したよ。 問題 5000個以上の名前が書かれている46Kのテキストファイル names.txt を用い... 2018.04.23 プロジェクトオイラー
プロジェクトオイラー C#でプロジェクトオイラーを解く(問題21「友愛数」) どーも、みつおです。 友愛数って授業で習いましたっけ?プロジェクトオイラーをやってて初めて聞いた。 問題 d(n) を n の真の約数の和と定義する. (真の約数とは n 以外の約数のことである. ) もし, d(a) = b かつ d(b... 2018.04.22 プロジェクトオイラー
プロジェクトオイラー C#でプロジェクトオイラーを解く(問題20「各位の数字の和 2」) どーも、みつおです。 プロジェクトオイラーってたまに、巨大すぎる数値を計算させるときあるよね。 BigIntegerの使い方は、「桁数が非常に大きい数値の計算 – BigIntegerを利用したInt64を超える数値の計算」を参考にすればい... 2018.04.18 プロジェクトオイラー
プロジェクトオイラー C#でプロジェクトオイラーを解く(問題19「日曜日の数え上げ」) どーも、みつおです。 問題 次の情報が与えられている. 1900年1月1日は月曜日である. 9月, 4月, 6月, 11月は30日まであり, 2月を除く他の月は31日まである. 2月は28日まであるが, うるう年のときは29日である. うる... 2018.04.17 プロジェクトオイラー
プロジェクトオイラー C#でプロジェクトオイラーを解く(問題18「最大経路の和 その1」) どーも、みつおです。 総当たりで解く方法で実装した。 問題 以下の三角形の頂点から下まで移動するとき, その数値の和の最大値は23になる. 3 7 4 2 4 6 8 5 9 3 この例では 3 + 7 + 4 + 9 = 23. 以下の三... 2018.04.17 プロジェクトオイラー
プロジェクトオイラー C#でプロジェクトオイラーを解く(問題17「数字の文字数」) どーも、みつおです。 英単語の定義がめんどくさい問題だった。 問題 1 から 5 までの数字を英単語で書けば one, two, three, four, five であり, 全部で 3 + 3 + 5 + 4 + 4 = 19 の文字が使... 2018.04.14 プロジェクトオイラー
プロジェクトオイラー C#でプロジェクトオイラーを解く(問題16「各位の数字の和」) どーも、みつおです。 2^1000とかlong型で表せませんからw 今回も「C#でプロジェクトオイラーを解く(問題13「大きな数の足し算」)」と同様にBigIntegerを使う。 BigIntegerの使い方は、「桁数が非常に大きい数値の計... 2018.04.13 プロジェクトオイラー
プロジェクトオイラー C#でプロジェクトオイラーを解く(問題15「格子経路」) どーも、みつおです。 格子経路って確か高校のときに習ったよね。20×20とかとんでもない数字は計算してないけど。 問題 2×2 のマス目の左上からスタートした場合, 引き返しなしで右下にいくルートは 6 つある. では, 20×20 のマス... 2018.04.12 プロジェクトオイラー
プロジェクトオイラー C#でプロジェクトオイラーを解く(問題14「最長のコラッツ数列」) どーも、みつおです。 コラッツ問題がまだ証明されていないとか夢があるよね。 問題 正の整数に以下の式で繰り返し生成する数列を定義する. n → n/2 (n が偶数) n → 3n + 1 (n が奇数) 13からはじめるとこの数列は以下の... 2018.04.11 プロジェクトオイラー