ps | |
---|---|
링크 | programmers.co.kr/… |
출처 | 프로그래머스 |
문제 번호 | 12923 |
문제명 | 숫자 블록 |
레벨 | Level 4 |
분류 |
수학 |
시간복잡도 | O(m*sqrt(n)) |
인풋사이즈 | m<=10,000, n<=1,000,000,000 |
사용한 언어 | Python |
해결날짜 | 2020/12/13 |
"""Solution code for "Programmers 12923. 숫자 블록".
- Problem link: https://programmers.co.kr/learn/courses/30/lessons/12923
- Solution link: http://www.teferi.net/ps/problems/programmers/12923
"""
import math
def solution(begin, end):
answer = []
for i in range(begin, end + 1):
if i == 1:
answer.append(0)
continue
for j in range(2, math.isqrt(i) + 1):
if i % j == 0 and i // j <= 10_000_000:
answer.append(i // j)
break
else:
answer.append(1)
return answer