728x90
반응형
문제 출처:
풀이:
def solution(x, y, n):
count = 0
answer = set()
answer.add(x) # 시작값 x 10 넣음
while answer:
print(answer)
if y in answer:
return count
nx_answer = set()
for nx in answer:
if nx + n <= y:
nx_answer.add(n+nx)
if nx * 2 <= y:
nx_answer.add(2*nx)
if nx * 3 <= y:
nx_answer.add(3*nx)
answer = nx_answer
count += 1
return -1
answer = set() 으로 해준다
nxasnwer = set() 다음 set 으로 만들어주기 위함이다.
for 문에 그냥 넣으면 오류나옴
answer = set(10) 이면
nsanswer 에는 set((10+n),(2*10),(3*10)) 을 넣어주고 set 을 최신화 시켜준다
다음 while문을 돌리면서 y값이 set에 존재하면
ex) set(15,20,30) 안에 존재 하게 되면 지금 까지 센 count 값을 반환해 주면 된다.
반응형
댓글