728x90
테스트 케이스 3개가 실패했다. 차례대로 앞에서 부터 계산을 하려고 해서 실패했고, 반대의 연산 경우도 고려해주어야 했다.
def solution(N, number):
answer = 1
# 더하기, 빼기, 곱하기, 나누기, 숫자 이어붙이기
temp = [N]
if N==number:
return 1
while True:
k = [ ]
for i in range(0,len(temp)):
k.append(temp[i]+N)
k.append(temp[i]-N)
k.append(N-temp[i])
k.append(temp[i]*N)
if temp[i]%N==0:
k.append(temp[i]//N)
if temp[i]!=0 and N%temp[i]==0:
k.append(N//temp[i])
k.append(int(str(temp[i])+str(N)))
answer+=1
k = list(set(k))
if number in k:
return answer
temp = k
if answer>8:
return -1
728x90
'🟢 알고리즘 문제 풀이 > Programmers' 카테고리의 다른 글
| [파이썬] 프로그래머스 덧칠하기 (0) | 2023.03.07 |
|---|---|
| [파이썬] 프로그래머스 타겟 넘버 (0) | 2023.03.07 |
| [파이썬] 프로그래머스 구명보트 (0) | 2023.03.02 |
| [파이썬] 프로그래머스 모음사전 (0) | 2023.03.01 |
| [파이썬] 프로그래머스 소수 찾기 (0) | 2023.02.28 |