Submission #1595563
Source Code Expand
from collections import defaultdict N,M = map(int, input().split()) AN = abs(N) MOD = 10**9+7 factors = defaultdict(lambda: 0) p = 2 n = AN while p*p <= AN: while n%p == 0: n //= p factors[p] += 1 p += 1 if n != 1: factors[n] += 1 def mul(a,b): return (a * b) % MOD def pow(a,n): # a^n ret = 1 mag = a while n > 0: if n & 1: ret = mul(ret, mag) mag = mul(mag, mag) n >>= 1 return ret def inv(a): return pow(a,MOD-2) fac = [1] fac_inv = [1] for n in range(1,M+100): f = mul(fac[n-1], n) fac.append(f) fac_inv.append(inv(f)) def ncr(n,r): return mul(mul(fac[n], fac_inv[n-r]), fac_inv[r]) def nhr(n,r): a = ncr(n+r-1, r) return ncr(n+r-1, r) ans = 1 for n in factors.values(): ans = mul(ans, nhr(M,n)) ans = mul(ans, pow(2,M-1)) print(ans)
Submission Info
Submission Time | |
---|---|
Task | D - 表現の自由 ( Freedom of expression ) |
User | prd_xxx |
Language | Python (3.4.3) |
Score | 100 |
Code Size | 913 Byte |
Status | AC |
Exec Time | 1288 ms |
Memory | 11372 KB |
Judge Result
Set Name | All | ||
---|---|---|---|
Score / Max Score | 100 / 100 | ||
Status |
|
Set Name | Test Cases |
---|---|
All | 00_max.txt, 00_max2.txt, 00_max3.txt, 00_min.txt, 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt, 00_sample_04.txt, 01_rnd_00.txt, 01_rnd_01.txt, 01_rnd_02.txt, 01_rnd_03.txt, 01_rnd_04.txt, 01_rnd_05.txt, 01_rnd_06.txt, 01_rnd_07.txt, 01_rnd_08.txt, 01_rnd_09.txt, 01_rnd_10.txt, 01_rnd_11.txt, 01_rnd_12.txt, 01_rnd_13.txt, 01_rnd_14.txt, 01_rnd_15.txt, 01_rnd_16.txt, 01_rnd_17.txt, 01_rnd_18.txt, 01_rnd_19.txt, 01_rnd_20.txt, 01_rnd_21.txt, 01_rnd_22.txt, 01_rnd_23.txt, 01_rnd_24.txt, 01_rnd_25.txt, 01_rnd_26.txt, 01_rnd_27.txt, 01_rnd_28.txt, 01_rnd_29.txt, 04_primes_01.txt, 04_primes_02.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00_max.txt | AC | 1273 ms | 11360 KB |
00_max2.txt | AC | 1288 ms | 11308 KB |
00_max3.txt | AC | 1272 ms | 11372 KB |
00_min.txt | AC | 21 ms | 3316 KB |
00_sample_01.txt | AC | 21 ms | 3316 KB |
00_sample_02.txt | AC | 28 ms | 3316 KB |
00_sample_03.txt | AC | 21 ms | 3316 KB |
00_sample_04.txt | AC | 34 ms | 3444 KB |
01_rnd_00.txt | AC | 528 ms | 6668 KB |
01_rnd_01.txt | AC | 167 ms | 4308 KB |
01_rnd_02.txt | AC | 42 ms | 3444 KB |
01_rnd_03.txt | AC | 482 ms | 6364 KB |
01_rnd_04.txt | AC | 428 ms | 6232 KB |
01_rnd_05.txt | AC | 551 ms | 6848 KB |
01_rnd_06.txt | AC | 197 ms | 4592 KB |
01_rnd_07.txt | AC | 225 ms | 4660 KB |
01_rnd_08.txt | AC | 1223 ms | 11112 KB |
01_rnd_09.txt | AC | 705 ms | 7732 KB |
01_rnd_10.txt | AC | 765 ms | 8064 KB |
01_rnd_11.txt | AC | 862 ms | 8760 KB |
01_rnd_12.txt | AC | 1099 ms | 10304 KB |
01_rnd_13.txt | AC | 567 ms | 6900 KB |
01_rnd_14.txt | AC | 669 ms | 7584 KB |
01_rnd_15.txt | AC | 243 ms | 4792 KB |
01_rnd_16.txt | AC | 877 ms | 8876 KB |
01_rnd_17.txt | AC | 1258 ms | 11356 KB |
01_rnd_18.txt | AC | 960 ms | 9424 KB |
01_rnd_19.txt | AC | 174 ms | 4476 KB |
01_rnd_20.txt | AC | 646 ms | 7376 KB |
01_rnd_21.txt | AC | 625 ms | 7312 KB |
01_rnd_22.txt | AC | 284 ms | 5172 KB |
01_rnd_23.txt | AC | 812 ms | 8448 KB |
01_rnd_24.txt | AC | 969 ms | 9460 KB |
01_rnd_25.txt | AC | 1135 ms | 10632 KB |
01_rnd_26.txt | AC | 731 ms | 7928 KB |
01_rnd_27.txt | AC | 541 ms | 6628 KB |
01_rnd_28.txt | AC | 568 ms | 6972 KB |
01_rnd_29.txt | AC | 1134 ms | 10536 KB |
04_primes_01.txt | AC | 1278 ms | 11368 KB |
04_primes_02.txt | AC | 1277 ms | 11368 KB |