結果
問題 |
No.500 階乗電卓
|
ユーザー |
![]() |
提出日時 | 2017-04-07 23:31:19 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 716 bytes |
コンパイル時間 | 534 ms |
コンパイル使用メモリ | 61,984 KB |
実行使用メモリ | 6,948 KB |
最終ジャッジ日時 | 2024-07-16 03:09:57 |
合計ジャッジ時間 | 1,372 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 7 WA * 13 |
ソースコード
#include <iostream> #include <cstdio> #include <algorithm> #include <string> #include <map> typedef long long ll; #define fi first #define se second using namespace std; ll N; ll num; ll ans; #define mod 1000000000000 //123456789012 int main(){ cin>>N; ans = 1; int jdg = 1; int i; if( N < 120 ){ while( N ){ ans *= N; if( ans >= mod ){ //jdg = 0; } ans %= mod; N--; } } else{ //jdg = 0; ans = 0; } if( jdg ) cout<<ans<<endl; else{ int k = 12; ll d = ans; while( d ){ k--; d /= 10; } for( i = 0; i < k; i++ ){ cout<<'0'; } cout<<ans<<endl; } return 0; }