Submission #73322291
Source Code Expand
import sys
def solve():
input = sys.stdin.read
data = input().split()
iterator = iter(data)
MAX_A = 10000001
MOD = 998244353
spf = list(range(MAX_A))
for i in range(2, int(MAX_A**0.5) + 1):
if spf[i] == i:
for j in range(i * i, MAX_A, i):
if spf[j] == j:
spf[j] = i
try:
t_str = next(iterator)
T = int(t_str)
except StopIteration:
return
out = []
for _ in range(T):
N = int(next(iterator))
A = [int(next(iterator)) for _ in range(N)]
primes = {}
objects = []
for x in A:
local_map = {}
while x > 1:
p = spf[x]
cnt = 0
while x % p == 0:
x //= p
cnt += 1
local_map[p] = cnt
if p not in primes:
primes[p] = [cnt, 0, 1]
else:
rec = primes[p]
if cnt > rec[0]:
rec[1] = rec[0]
rec[0] = cnt
rec[2] = 1
elif cnt == rec[0]:
rec[2] += 1
elif cnt > rec[1]:
rec[1] = cnt
objects.append(local_map)
base_lcm = 1
for p, (mx, mx2, c) in primes.items():
base_lcm = base_lcm * pow(p, mx, MOD) % MOD
ans = []
for i in range(N):
val = base_lcm
for p, cnt in objects[i].items():
rec = primes[p]
if cnt == rec[0] and rec[2] == 1:
inv = pow(pow(p, rec[0] - rec[1], MOD), MOD - 2, MOD)
val = val * inv % MOD
ans.append(str(val))
out.append(" ".join(ans))
print("\n".join(out))
if __name__ == '__main__':
solve()
Submission Info
| Submission Time | |
|---|---|
| Task | E - Many LCMs |
| User | totukawa |
| Language | Python (CPython 3.13.7) |
| Score | 0 |
| Code Size | 2043 Byte |
| Status | TLE |
| Exec Time | > 2000 ms |
| Memory | 500100 KiB |
Judge Result
| Set Name | Sample | All | ||||||
|---|---|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 0 / 475 | ||||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00_sample_01.txt |
| All | 00_sample_01.txt, 01_large_t_01.txt, 01_large_t_02.txt, 01_large_t_03.txt, 02_large_n_01.txt, 02_large_n_02.txt, 02_large_n_03.txt, 03_prime_01.txt, 03_prime_02.txt, 03_prime_03.txt, 03_prime_04.txt, 03_prime_05.txt, 03_prime_06.txt, 04_small_prime_factor_01.txt, 04_small_prime_factor_02.txt, 04_small_prime_factor_03.txt, 04_small_prime_factor_04.txt, 04_small_prime_factor_05.txt, 04_small_prime_factor_06.txt, 05_large_value_01.txt, 05_large_value_02.txt, 05_large_value_03.txt, 05_large_value_04.txt, 05_large_value_05.txt, 05_large_value_06.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00_sample_01.txt | AC | 1407 ms | 401104 KiB |
| 01_large_t_01.txt | TLE | > 2000 ms | 417660 KiB |
| 01_large_t_02.txt | TLE | > 2000 ms | 418960 KiB |
| 01_large_t_03.txt | TLE | > 2000 ms | 419616 KiB |
| 02_large_n_01.txt | TLE | > 2000 ms | 442060 KiB |
| 02_large_n_02.txt | TLE | > 2000 ms | 453300 KiB |
| 02_large_n_03.txt | TLE | > 2000 ms | 483768 KiB |
| 03_prime_01.txt | AC | 1970 ms | 423084 KiB |
| 03_prime_02.txt | TLE | > 2000 ms | 493156 KiB |
| 03_prime_03.txt | TLE | > 2000 ms | 493048 KiB |
| 03_prime_04.txt | TLE | > 2000 ms | 493260 KiB |
| 03_prime_05.txt | TLE | > 2000 ms | 462060 KiB |
| 03_prime_06.txt | TLE | > 2000 ms | 462100 KiB |
| 04_small_prime_factor_01.txt | TLE | > 2000 ms | 418032 KiB |
| 04_small_prime_factor_02.txt | AC | 1967 ms | 480312 KiB |
| 04_small_prime_factor_03.txt | AC | 1985 ms | 480492 KiB |
| 04_small_prime_factor_04.txt | AC | 1901 ms | 480460 KiB |
| 04_small_prime_factor_05.txt | TLE | > 2000 ms | 421668 KiB |
| 04_small_prime_factor_06.txt | TLE | > 2000 ms | 421668 KiB |
| 05_large_value_01.txt | TLE | > 2000 ms | 419256 KiB |
| 05_large_value_02.txt | AC | 1924 ms | 423052 KiB |
| 05_large_value_03.txt | TLE | > 2000 ms | 485128 KiB |
| 05_large_value_04.txt | TLE | > 2000 ms | 500100 KiB |
| 05_large_value_05.txt | TLE | > 2000 ms | 420184 KiB |
| 05_large_value_06.txt | TLE | > 2000 ms | 462536 KiB |