引き続き、B問題を解いていきます。
ABC B055 – Training Camp
問題
すぬけくんはトレーニングが好きなのでN回だけトレーニングすることにしました。
すぬけくんのトレーニング開始前のパワーは1です。すぬけくんがi回目のトレーニングを終えるとパワーがi倍されます。
すぬけくんがN回トレーニングをしたあとのパワーを求めなさい。ただし、答えの値は非常に大きな値になることがあるので 10^9+7で割ったあまりを出力してください。
自分の回答
#include <bits/stdc++.h>
using namespace std;
int main () {
int N;
cin >> N;
long int power = 1;
int a = 1000000007;
for(int i = 1; i <= N; i++){
power = power * i % a;
}
cout << power << endl;
}
そんなに難しい問題ではないですが、long int型を使わないと正解に辿り着けません。
自分でもint型とlong int型の違いや使い分けに関して、あやふやなところがあるので、きちんと整理したいと思います。