トップページに戻る    次のC#のサンプルへ    前のC#のサンプルへ

Problem97 大きな非メルセンヌ素数

問題

100万桁を超える初めての素数は1999年に発見された.
これはメルセンヌ素数であり, (2の6972593乗)-1である.実際,2098960桁ある.
それ以降も, より多くの桁になるメルセンヌ素数(2のp乗-1の形の数) が他にも発見されている.

しかし, 2004年に, 非常に大きな非メルセンヌ素数が発見された.
これは2357207桁の数であり, 28433*(2の7830457乗)+1である.

この素数の末尾10桁を答えよ.


ソース

using System;

class Program
{
    static void Main()
    {
        long CalcResult = 28433;
        for (int N = 1; N <= 7830457; N++) {
            CalcResult *= 2;
            CalcResult %= 10000000000L;
        }
        CalcResult++;
        CalcResult %= 10000000000L;
        Console.WriteLine(CalcResult);
    }
}


実行結果

8739992577


解説

こまめにModを求めてます。