Submission #3424790


Source Code Expand

#include <bits/stdc++.h>

#define For(i, j, k) for (int i = j; i <= k; ++ i)
#define Forr(i, j, k) for (int i = j; i >= k; -- i)

using namespace std;

inline int read() {
	int x = 0, p = 1; char c = getchar();
	for (; !isdigit(c); c = getchar()) if (c == '-') p = -1;
	for (; isdigit(c); c = getchar()) x = (x << 1) + (x << 3) + (c ^ 48);
	return x * p;
}

inline void File() {
	freopen("D.in", "r", stdin);
	freopen("D.out", "w", stdout);
}

const int N = 2e5 + 10, mod = 1e9 + 7;
int fac[N], inv[N], n, m, c[N];
int isnot[N], prime[N], cnt, ps;

inline int qpow(int a, int b) {
	static int res;
	for (res = 1; b; b >>= 1, a = 1ll * a * a % mod)
		if (b & 1) res = 1ll * res * a % mod;
	return res;
}

inline void Init(int n) {
	isnot[1] = 1;
	For(i, 2, n) {
		if (!isnot[i]) prime[++ cnt] = i;
		For(j, 1, cnt) {
			if (1ll * i * prime[j] > n) break;
			isnot[i * prime[j]] = 1;
			if (i % prime[j] == 0) break;
		}
	}
	
	fac[0] = 1;
	For(i, 1, n) fac[i] = 1ll * i * fac[i - 1] % mod;
	inv[n] = qpow(fac[n], mod - 2);
	Forr(i, n - 1, 0) inv[i] = 1ll * (i + 1) * inv[i + 1] % mod;
}

inline int C(int n, int m) {
	return 1ll * fac[n] * inv[m] % mod * inv[n - m] % mod;
}

int main() {
	
	Init(N - 5);

	n = read(), m = read(), n = abs(n);

	for (int i = 1; prime[i] <= n && i <= cnt; ++ i) {
		for (; n % prime[i] == 0; ) n /= prime[i], ++ c[i]; ps = i;
	}

	int ans = 1;
	For(i, 1, ps) ans = 1ll * ans * C(c[i] + m - 1, m - 1) % mod;

	ans = 1ll * ans * qpow(2, m - 1) % mod;
	cout << ans << endl;

	return 0;
}

Submission Info

Submission Time
Task D - 表現の自由 ( Freedom of expression )
User LSTete
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1584 Byte
Status WA
Exec Time 6 ms
Memory 2688 KB

Judge Result

Set Name All
Score / Max Score 0 / 100
Status
AC × 26
WA × 14
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 6 ms 2688 KB
00_max2.txt AC 5 ms 2688 KB
00_max3.txt AC 6 ms 2688 KB
00_min.txt AC 5 ms 2688 KB
00_sample_01.txt AC 6 ms 2688 KB
00_sample_02.txt AC 5 ms 2688 KB
00_sample_03.txt AC 5 ms 2688 KB
00_sample_04.txt AC 5 ms 2688 KB
01_rnd_00.txt AC 5 ms 2688 KB
01_rnd_01.txt AC 6 ms 2688 KB
01_rnd_02.txt AC 5 ms 2688 KB
01_rnd_03.txt AC 6 ms 2688 KB
01_rnd_04.txt AC 5 ms 2688 KB
01_rnd_05.txt AC 6 ms 2688 KB
01_rnd_06.txt WA 6 ms 2688 KB
01_rnd_07.txt WA 6 ms 2688 KB
01_rnd_08.txt AC 5 ms 2688 KB
01_rnd_09.txt WA 6 ms 2688 KB
01_rnd_10.txt WA 6 ms 2688 KB
01_rnd_11.txt AC 6 ms 2688 KB
01_rnd_12.txt WA 6 ms 2688 KB
01_rnd_13.txt AC 6 ms 2688 KB
01_rnd_14.txt AC 6 ms 2688 KB
01_rnd_15.txt WA 6 ms 2688 KB
01_rnd_16.txt AC 6 ms 2688 KB
01_rnd_17.txt WA 6 ms 2688 KB
01_rnd_18.txt AC 6 ms 2688 KB
01_rnd_19.txt AC 5 ms 2688 KB
01_rnd_20.txt WA 6 ms 2688 KB
01_rnd_21.txt WA 6 ms 2688 KB
01_rnd_22.txt WA 6 ms 2688 KB
01_rnd_23.txt WA 6 ms 2688 KB
01_rnd_24.txt WA 6 ms 2688 KB
01_rnd_25.txt AC 6 ms 2688 KB
01_rnd_26.txt AC 6 ms 2688 KB
01_rnd_27.txt AC 6 ms 2688 KB
01_rnd_28.txt AC 5 ms 2688 KB
01_rnd_29.txt AC 5 ms 2688 KB
04_primes_01.txt WA 6 ms 2688 KB
04_primes_02.txt WA 6 ms 2688 KB