結果

問題 No.500 階乗電卓
ユーザー toshiro_yanagi
提出日時 2019-02-26 06:14:09
言語 Go
(1.23.4)
結果
WA  
実行時間 -
コード長 377 bytes
コンパイル時間 16,308 ms
コンパイル使用メモリ 235,752 KB
実行使用メモリ 5,248 KB
最終ジャッジ日時 2025-01-03 02:19:27
合計ジャッジ時間 16,530 ms
ジャッジサーバーID
(参考情報)
judge1 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1 WA * 2
other AC * 16 WA * 4
権限があれば一括ダウンロードができます

ソースコード

diff #

package main

import "fmt"

var mod int

func fact(n int) int {
	if n == 0 {
		return 1
	}
	return (n * fact(n-1)) % mod
}

func main() {
	mod = pow(10, 12)

	var n int
	fmt.Scan(&n)

	var ans int
	if n >= 50 {
		ans = 0
	} else {
		ans = fact(n)
	}
	fmt.Printf("%012d\n", ans)
}

func pow(a, b int) int {
	res := 1
	for range make([]struct{}, b) {
		res *= a
	}
	return res
}
0