ps:problems:boj:11653
소인수분해
ps | |
---|---|
링크 | acmicpc.net/… |
출처 | BOJ |
문제 번호 | 11653 |
문제명 | 소인수분해 |
레벨 | 실버 5 |
분류 |
정수론 |
시간복잡도 | O(sqrt(n)) |
인풋사이즈 | n<=10,000,000 |
사용한 언어 | Python |
제출기록 | 30840KB / 76ms |
최고기록 | 56ms |
해결날짜 | 2022/06/02 |
풀이
- 말 그대로 소인수분해 (Prime Factorization)를 하는것이 전부인 문제.
- n의 범위가 10^7로 크지 않으므로, Trial division으로 충분하다. 시간복잡도는 O(sqrt(n))
코드
"""Solution code for "BOJ 11653. 소인수분해".
- Problem link: https://www.acmicpc.net/problem/11653
- Solution link: http://www.teferi.net/ps/problems/boj/11653
Tags: [Math]
"""
from teflib import numtheory
def main():
N = int(input())
for p, k in numtheory.prime_factorization_small(N).items():
for _ in range(k):
print(p)
if __name__ == '__main__':
main()
- Dependency: teflib.numtheory.prime_factorization_small
ps/problems/boj/11653.txt · 마지막으로 수정됨: 2022/06/02 07:33 저자 teferi
토론