https://programmers.co.kr/learn/courses/30/lessons/12923
def odd_max_factor(odd):
x = 3
while x * x <= odd:
if odd % x == 0:
return odd // x
x += 2
return 1
def solution(begin, end):
answer = [i >> 1 for i in range(begin, end + 1)]
for i in range(not begin & 1, len(answer), 2):
answer[i] = odd_max_factor((answer[i] << 1) + 1)
if begin == 1:
answer[0] = 0
return answer
댓글 0