mod 1000000007 をする問題。鉄則本の問題なので、コードのみ。
問題概要
正の整数 が与えられる。 を 1000000007 で割った余りを求めよ。
制約
コード
#include <bits/stdc++.h> using namespace std; // a^n mod m template<class T> T mod_pow(T a, T n, T m) { T res = 1; while (n > 0) { if (n % 2 == 1) res = res * a % m; a = a * a % m; n >>= 1; } return res; }; int main() { long long a, b; cin >> a >> b; cout << mod_pow(a, b, 1000000007LL) << endl; }