結果
問題 | No.1327 グラフの数え上げ |
ユーザー | kmjp |
提出日時 | 2020-12-24 00:33:57 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 100 ms / 2,000 ms |
コード長 | 2,743 bytes |
コンパイル時間 | 181 ms |
コンパイル使用メモリ | 82,048 KB |
実行使用メモリ | 99,668 KB |
最終ジャッジ日時 | 2024-09-21 16:38:53 |
合計ジャッジ時間 | 1,758 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 38 ms
52,480 KB |
testcase_01 | AC | 43 ms
58,112 KB |
testcase_02 | AC | 37 ms
52,224 KB |
testcase_03 | AC | 37 ms
52,224 KB |
testcase_04 | AC | 37 ms
52,480 KB |
testcase_05 | AC | 36 ms
52,480 KB |
testcase_06 | AC | 36 ms
52,480 KB |
testcase_07 | AC | 37 ms
52,332 KB |
testcase_08 | AC | 44 ms
57,600 KB |
testcase_09 | AC | 98 ms
57,472 KB |
testcase_10 | AC | 38 ms
52,992 KB |
testcase_11 | AC | 37 ms
52,864 KB |
testcase_12 | AC | 37 ms
52,352 KB |
testcase_13 | AC | 39 ms
52,352 KB |
testcase_14 | AC | 38 ms
52,352 KB |
testcase_15 | AC | 43 ms
57,600 KB |
testcase_16 | AC | 100 ms
99,668 KB |
ソースコード
N=input() def fact(N): facts=[ [0,1], [10000000,682498929], [20000000,491101308], [30000000,76479948], [40000000,723816384], [50000000,67347853], [60000000,27368307], [70000000,625544428], [80000000,199888908], [90000000,888050723], [100000000,927880474], [110000000,281863274], [120000000,661224977], [130000000,623534362], [140000000,970055531], [150000000,261384175], [160000000,195888993], [170000000,66404266], [180000000,547665832], [190000000,109838563], [200000000,933245637], [210000000,724691727], [220000000,368925948], [230000000,268838846], [240000000,136026497], [250000000,112390913], [260000000,135498044], [270000000,217544623], [280000000,419363534], [290000000,500780548], [300000000,668123525], [310000000,128487469], [320000000,30977140], [330000000,522049725], [340000000,309058615], [350000000,386027524], [360000000,189239124], [370000000,148528617], [380000000,940567523], [390000000,917084264], [400000000,429277690], [410000000,996164327], [420000000,358655417], [430000000,568392357], [440000000,780072518], [450000000,462639908], [460000000,275105629], [470000000,909210595], [480000000,99199382], [490000000,703397904], [500000000,733333339], [510000000,97830135], [520000000,608823837], [530000000,256141983], [540000000,141827977], [550000000,696628828], [560000000,637939935], [570000000,811575797], [580000000,848924691], [590000000,131772368], [600000000,724464507], [610000000,272814771], [620000000,326159309], [630000000,456152084], [640000000,903466878], [650000000,92255682], [660000000,769795511], [670000000,373745190], [680000000,606241871], [690000000,825871994], [700000000,957939114], [710000000,435887178], [720000000,852304035], [730000000,663307737], [740000000,375297772], [750000000,217598709], [760000000,624148346], [770000000,671734977], [780000000,624500515], [790000000,748510389], [800000000,203191898], [810000000,423951674], [820000000,629786193], [830000000,672850561], [840000000,814362881], [850000000,823845496], [860000000,116667533], [870000000,256473217], [880000000,627655552], [890000000,245795606], [900000000,586445753], [910000000,172114298], [920000000,193781724], [930000000,778983779], [940000000,83868974], [950000000,315103615], [960000000,965785236], [970000000,492741665], [980000000,377329025], [990000000,847549272], [1000000000,698611116], [1001000000,0] ] cur = 0 ret = 1 for f in facts: if N >= f[0]: cur = f[0] ret = f[1] for i in range(cur+1,N+1): ret = ret * i % 1000000007 return ret if len(N)>10: print(0) else: N = int(N) if N>=1000000008: print(0) else: v = fact(N-1) if N % 2 == 0: v = 1000000007-v print(v)