NTL_1_A – 素因数分解

AtCoderなど過去問

NTL_1_A – 素因数分解

def trial_div(n):
    ans = []
    while n % 2 == 0:
        ans.append(2)
        n //= 2
    d = 3
    while d * d <= n:
        if n % d == 0:
            ans.append(d)
            n //= d
        else:
            d += 2
    if n != 1:
        ans.append(n)
    return ans

n = int(input())

ans = trial_div(n)
print(f'{n}: ',end = '')
print(*ans)
Pythonで素因数分解(試し割り法) | note.nkmk.me
Pythonで、試し割り法によって素因数分解を行う方法について説明する。素因数分解(試し割り法)のサンプルコード 素数とその個数を取得 処理速度(処理時間)の目安 なお、試し割り法はシンプルなアルゴリズムであり、処理速度という点では最適なアルゴリズムではない。素因数分解 - Wikipedia 試し割り法 - Wiki...

コメント

タイトルとURLをコピーしました