목차

Factovisors

ps
링크acmicpc.net/…
출처BOJ
문제 번호4414
문제명Factovisors
레벨골드 4
분류

정수론

시간복잡도O(sqrt(m)) + O(t * (sqrt(m)/logm + logn))
인풋사이즈t<=?, n<=2^32, m<=2^32
사용한 언어Python 3.13
제출기록35560KB / 36ms
최고기록36ms
해결날짜2026/03/30

풀이

코드

"""Solution code for "BOJ 4414. Factovisors".

- Problem link: https://www.acmicpc.net/problem/4414
- Solution link: http://www.teferi.net/ps/problems/boj/4414

Tags: [number theory]
"""

from teflib import io as tio
from teflib import numtheory
from teflib import primenum


@tio.run_until_eof
def main():
    primenum.prime_list(2**16)

    n, m = tio.read_ints()

    if m == 0:
        print(f'{m} does not divide {n}!')
        return

    e = numtheory.exponent_of_num_in_factorial(n, primenum.factorize(m))
    if e == 0:
        print(f'{m} does not divide {n}!')
    else:
        print(f'{m} divides {n}!')


if __name__ == '__main__':
    main()