結果

問題 No.500 階乗電卓
コンテスト
ユーザー suzu
提出日時 2023-05-24 14:34:31
言語 C#(csc)
(csc 3.9.0)
コンパイル:
csc -langversion:latest -unsafe -warn:0 -o+ /r:System.Numerics.dll _filename_ -out:a.exe
実行:
/usr/bin/mono a.exe
結果
AC  
実行時間 15 ms / 2,000 ms
コード長 608 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 2,005 ms
コンパイル使用メモリ 104,960 KB
実行使用メモリ 18,304 KB
最終ジャッジ日時 2026-05-29 16:31:54
合計ジャッジ時間 3,076 ms
ジャッジサーバーID
(参考情報)
judge2_1 / judge3_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 20
権限があれば一括ダウンロードができます
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.9.0-6.21124.20 (db94f4cc)
Copyright (C) Microsoft Corporation. All rights reserved.

ソースコード

diff #
raw source code

using System;
using System.Linq;
using System.Collections.Generic;

namespace yukicoder
{
	class pg
	{
		static void Main(string[] args)
		{
			long N = long.Parse(Console.ReadLine());
			long ans = 1;
			long mod = 1000000000000;
			
			bool modSwitch = false;
			
			for(long i = 1;i <= N;i++)
			{
				ans *= i;
				
				if(ans > mod)
				{
					modSwitch = true;
					ans %= mod;
				}
				if(ans == 0)
				{
					Console.WriteLine("000000000000");
					return;
				}
			}
			
			if(modSwitch)
			{
				Console.WriteLine(ans.ToString("d12"));
			}else
			{
				Console.WriteLine(ans);
			}
			
		}
	}
}	
0