結果

問題 No.500 階乗電卓
コンテスト
ユーザー ぴろず
提出日時 2017-04-07 22:42:11
言語 Java
(openjdk 25.0.2)
コンパイル:
javac -encoding UTF8 _filename_
実行:
java -ea -Xmx700m -Xss256M -DONLINE_JUDGE=true _class_
結果
WA  
実行時間 -
コード長 529 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 2,354 ms
コンパイル使用メモリ 83,328 KB
実行使用メモリ 42,316 KB
最終ジャッジ日時 2026-03-30 17:32:46
合計ジャッジ時間 4,462 ms
ジャッジサーバーID
(参考情報)
judge1_1 / judge2_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 19 WA * 1
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

package no500;

import java.util.Scanner;

public class Main {
	public static long MOD = 1000000000000L;
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		long n = sc.nextLong();
		n = Math.min(n, 1000);
		long fact = 1;
		boolean of = false;
		long fact2 = 1;
		for(int i=1;i<=n;i++) {
			fact = fact * i % MOD;
			fact2 = fact * i;
			if (fact2 >= MOD) {
				of = true;
			}
		}
		if (of) {
			System.out.println(String.format("%012d", fact));
		}else{
			System.out.println(fact);
		}
		
	}
}
0