Project Euler 97

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

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

この素数の最後の10桁を答えよ.

C/C++

#pragma comment(lib,"mpir.lib")
#include <mpir.h>
#include <iostream>

using namespace std;

int main(){
	mpz_t n;

	mpz_init_set_ui(n,1);
	mpz_ui_pow_ui(n,2,7830457);
	mpz_mul_ui(n, n, 28433);
	mpz_add_ui(n, n, 1);

	mpz_out_str(stdout, 10, n);
	cout << endl;
}

めんどくさいので糞コード。
mpirすごいなーって思いましたw