TIL/알고리즘 문제

소인수분해

hyo-min 2024. 3. 5. 14:54
def prime_factors(N):
    factors = []
    n = 2
    while n <= N:
        if N % n == 0:
            factors.append(n)
            N = N / n
        else:
            n = n + 1
    return factors

T = int(input())
for testcase in range(1, T + 1):
    N = int(input())
    a = 0
    b = 0
    c = 0
    d = 0
    e = 0
    num_list = prime_factors(N)
    
    for i in num_list:
        if i == 2:
            a += 1
        elif i == 3:
            b += 1
        elif i == 5:
            c += 1
        elif i == 7:
            d += 1
        elif i == 11:
            e += 1

    print(f"#{testcase} {a} {b} {c} {d} {e}")