Submission #46636067
Source Code Expand
from math import sqrt MOD = 998244353 # Returns the factorization of n as a map {prime: multiplicity} def factorize(n): factors = {} # Count the number of times 2 divides n while n % 2 == 0: if 2 not in factors: factors[2] = 0 factors[2] += 1 n //= 2 # n must be odd at this point, so a skip of 2 can be used for i in range(3, int(sqrt(n)) + 1, 2): # While i divides n, count i and divide n while n % i == 0: if i not in factors: factors[i] = 0 factors[i] += 1 n //= i # If n is a prime greater than 2 if n > 2: factors[n] = 1 return factors # Calculate the number of divisors for A^B def numDivisors(A, B): factors = factorize(A) divisors = 1 for key in factors: divisors *= (factors[key] * B + 1) return divisors def solve(A, B): divisors = numDivisors(A, B) answer = (divisors * B) // 2 return answer % MOD # Read from stdin A, B = map(int, input().split()) # Print the answer print(solve(A, B))
Submission Info
Submission Time | |
---|---|
Task | B - Product of Divisors |
User | scott_wu |
Language | Python (PyPy 3.10-v7.3.12) |
Score | 500 |
Code Size | 1127 Byte |
Status | AC |
Exec Time | 58 ms |
Memory | 80956 KiB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 500 / 500 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 01-sample-01.txt, 01-sample-02.txt, 01-sample-03.txt |
All | 01-sample-01.txt, 01-sample-02.txt, 01-sample-03.txt, 02-min-01.txt, 03-max-01.txt, 04-mult-mod-sqrt-01.txt, 04-mult-mod-sqrt-02.txt, 04-mult-mod-sqrt-03.txt, 04-mult-mod-sqrt-04.txt, 04-mult-mod-sqrt-05.txt, 04-mult-mod-sqrt-06.txt, 04-mult-mod-sqrt-07.txt, 04-mult-mod-sqrt-08.txt, 04-mult-mod-sqrt-09.txt, 04-mult-mod-sqrt-10.txt, 05-square-even-even-01.txt, 05-square-even-even-02.txt, 05-square-even-even-03.txt, 05-square-even-even-04.txt, 05-square-even-even-05.txt, 06-square-even-odd-01.txt, 06-square-even-odd-02.txt, 06-square-even-odd-03.txt, 06-square-even-odd-04.txt, 06-square-even-odd-05.txt, 07-square-odd-even-01.txt, 07-square-odd-even-02.txt, 07-square-odd-even-03.txt, 07-square-odd-even-04.txt, 07-square-odd-even-05.txt, 08-square-odd-odd-01.txt, 08-square-odd-odd-02.txt, 08-square-odd-odd-03.txt, 08-square-odd-odd-04.txt, 08-square-odd-odd-05.txt, 09-random-01.txt, 09-random-02.txt, 09-random-03.txt, 09-random-04.txt, 09-random-05.txt, 09-random-06.txt, 09-random-07.txt, 09-random-08.txt, 09-random-09.txt, 09-random-10.txt, 10-mult-mod-01.txt, 10-mult-mod-02.txt, 10-mult-mod-03.txt, 10-mult-mod-04.txt, 10-mult-mod-05.txt, 11-prime-square-01.txt, 11-prime-square-02.txt, 11-prime-square-03.txt, 11-prime-square-04.txt, 12-prime-01.txt, 12-prime-02.txt, 12-prime-03.txt, 12-prime-04.txt, 13-2pow-01.txt, 13-2pow-02.txt, 13-2pow-03.txt, 13-2pow-04.txt, 13-2pow-05.txt, 13-2pow-06.txt, 13-2pow-07.txt, 13-2pow-08.txt, 13-2pow-09.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
01-sample-01.txt | AC | 54 ms | 76604 KiB |
01-sample-02.txt | AC | 55 ms | 76508 KiB |
01-sample-03.txt | AC | 57 ms | 80700 KiB |
02-min-01.txt | AC | 55 ms | 76764 KiB |
03-max-01.txt | AC | 56 ms | 80708 KiB |
04-mult-mod-sqrt-01.txt | AC | 57 ms | 80580 KiB |
04-mult-mod-sqrt-02.txt | AC | 57 ms | 80836 KiB |
04-mult-mod-sqrt-03.txt | AC | 56 ms | 80728 KiB |
04-mult-mod-sqrt-04.txt | AC | 57 ms | 80760 KiB |
04-mult-mod-sqrt-05.txt | AC | 57 ms | 80760 KiB |
04-mult-mod-sqrt-06.txt | AC | 57 ms | 80772 KiB |
04-mult-mod-sqrt-07.txt | AC | 57 ms | 80696 KiB |
04-mult-mod-sqrt-08.txt | AC | 55 ms | 76660 KiB |
04-mult-mod-sqrt-09.txt | AC | 57 ms | 80836 KiB |
04-mult-mod-sqrt-10.txt | AC | 55 ms | 76508 KiB |
05-square-even-even-01.txt | AC | 56 ms | 80704 KiB |
05-square-even-even-02.txt | AC | 56 ms | 80508 KiB |
05-square-even-even-03.txt | AC | 57 ms | 80652 KiB |
05-square-even-even-04.txt | AC | 56 ms | 80512 KiB |
05-square-even-even-05.txt | AC | 56 ms | 80648 KiB |
06-square-even-odd-01.txt | AC | 57 ms | 80800 KiB |
06-square-even-odd-02.txt | AC | 56 ms | 80736 KiB |
06-square-even-odd-03.txt | AC | 55 ms | 80736 KiB |
06-square-even-odd-04.txt | AC | 55 ms | 76352 KiB |
06-square-even-odd-05.txt | AC | 55 ms | 80808 KiB |
07-square-odd-even-01.txt | AC | 56 ms | 80824 KiB |
07-square-odd-even-02.txt | AC | 57 ms | 80692 KiB |
07-square-odd-even-03.txt | AC | 57 ms | 80760 KiB |
07-square-odd-even-04.txt | AC | 56 ms | 80720 KiB |
07-square-odd-even-05.txt | AC | 54 ms | 76336 KiB |
08-square-odd-odd-01.txt | AC | 57 ms | 80656 KiB |
08-square-odd-odd-02.txt | AC | 57 ms | 80840 KiB |
08-square-odd-odd-03.txt | AC | 56 ms | 80560 KiB |
08-square-odd-odd-04.txt | AC | 56 ms | 80784 KiB |
08-square-odd-odd-05.txt | AC | 57 ms | 80784 KiB |
09-random-01.txt | AC | 56 ms | 80704 KiB |
09-random-02.txt | AC | 57 ms | 80708 KiB |
09-random-03.txt | AC | 57 ms | 80844 KiB |
09-random-04.txt | AC | 57 ms | 80792 KiB |
09-random-05.txt | AC | 57 ms | 80784 KiB |
09-random-06.txt | AC | 57 ms | 80656 KiB |
09-random-07.txt | AC | 57 ms | 80760 KiB |
09-random-08.txt | AC | 57 ms | 80512 KiB |
09-random-09.txt | AC | 57 ms | 80496 KiB |
09-random-10.txt | AC | 57 ms | 80956 KiB |
10-mult-mod-01.txt | AC | 57 ms | 80648 KiB |
10-mult-mod-02.txt | AC | 57 ms | 80848 KiB |
10-mult-mod-03.txt | AC | 58 ms | 80420 KiB |
10-mult-mod-04.txt | AC | 57 ms | 80732 KiB |
10-mult-mod-05.txt | AC | 57 ms | 80560 KiB |
11-prime-square-01.txt | AC | 58 ms | 80452 KiB |
11-prime-square-02.txt | AC | 58 ms | 80828 KiB |
11-prime-square-03.txt | AC | 58 ms | 80516 KiB |
11-prime-square-04.txt | AC | 58 ms | 80652 KiB |
12-prime-01.txt | AC | 58 ms | 80552 KiB |
12-prime-02.txt | AC | 58 ms | 80536 KiB |
12-prime-03.txt | AC | 58 ms | 80772 KiB |
12-prime-04.txt | AC | 58 ms | 80952 KiB |
13-2pow-01.txt | AC | 55 ms | 76764 KiB |
13-2pow-02.txt | AC | 56 ms | 76628 KiB |
13-2pow-03.txt | AC | 55 ms | 76864 KiB |
13-2pow-04.txt | AC | 56 ms | 76380 KiB |
13-2pow-05.txt | AC | 56 ms | 76876 KiB |
13-2pow-06.txt | AC | 55 ms | 76704 KiB |
13-2pow-07.txt | AC | 55 ms | 76508 KiB |
13-2pow-08.txt | AC | 56 ms | 76564 KiB |
13-2pow-09.txt | AC | 56 ms | 76352 KiB |