https://www.acmicpc.net/problem/1110
문제
내 풀이
def dfs(num):
global count
sth = int(num)
num = str(num)
if sth == n and count > 0:
return
if len(num) == 2:
first = int(num[0])
second = int(num[1])
third = str(first + second)
if len(third) == 1:
next = str(second) + str(third)
count += 1
dfs(next)
else:
next = str(second) + str(third[1])
count += 1
dfs(next)
elif num == '0':
count += 1
return
elif len(num) == 1:
first = 0
second = int(num)
third = str(second)
# print(f'check{third}')
if len(third) == 1:
next = str(second) + str(third)
count += 1
dfs(next)
# 재귀가 안멈춰
elif len(third) == 2:
next = str(second) + str(third[1])
count += 1
dfs(next)
if __name__ == "__main__":
n = int(input())
count = 0
dfs(n)
print(count)
해설
정답 풀이
#추가예정
출처:
해석
'sw사관학교 정글 2기 > 01 기초,재귀,완전탐색, 정렬' 카테고리의 다른 글
[완전탐색] 백준 2503번 숫자야구 with Python3 (0) | 2021.08.13 |
---|---|
[DP] 백준 9095번 1,2,3 더하기 with python3 (0) | 2021.08.13 |
[dfs] ★★★백준 2468번 안전 영역 with Python3 (0) | 2021.08.11 |
[완전탐색] 백준 외판원 순회 2 10971번 with Python3★★★ (0) | 2021.08.10 |
[완전탐색] 백준 N-queen 9663번 with Python3 ★★★ (0) | 2021.08.10 |
댓글