結果

問題 No.502 階乗を計算するだけ
ユーザー 0214sh7
提出日時 2017-04-07 23:33:46
言語 C++14
(gcc 13.3.0 + boost 1.87.0)
結果
TLE  
実行時間 -
コード長 399 bytes
コンパイル時間 462 ms
コンパイル使用メモリ 38,272 KB
実行使用メモリ 13,884 KB
最終ジャッジ日時 2024-07-16 03:12:59
合計ジャッジ時間 4,450 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 33 TLE * 2 -- * 17
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <cstdio>
#include <cmath>
#define MOD 1000000007
int main()
{
	long long N;
	scanf("%lld",&N);
	if(N>=MOD){
		printf("0\n");
	}else if(N>=500000000){
		long long sum=733333339;
		for(int i=500000001;i<=N;i++){
			sum *= i;
			sum %= MOD;
		}
		printf("%lld\n",sum);

	}else{
		long long sum=1;
		for(int i=1;i<=N;i++){
			sum *= i;
			sum %= MOD;
		}
		printf("%lld\n",sum);
	}
	return 0;
}
0