https://programmers.co.kr/learn/courses/30/lessons/12923
"""
"""
import math
def solution(begin, end):
answer = []
for i in range(begin, end+1): # 주어진 블록 길이 만큼만 반복문을 돌려 구하면 됨.
if i == 1:
answer.append(0)
continue
n = int(math.sqrt(i))
for j in range(2, n+1): # 소수 구하기
if i % j == 0:
tmp = i // j
if tmp > 10 ** 7: # ★ 도로 길이 > 블록 길이 이므로 효율성 통과를 위해 중요한 부분. 자세한 내용은 참고자료
continue
else:
answer.append(i // j)
break
else:
answer.append(1)
return answer
쉬운 문제인줄 알았는데 제한 사항에도 도로길이 > 블록길이 라는 힌트도 없어서 효율성 테스트 다 틀리고 난감했던 문제