재귀함수를 이용한 이진수 출력
10진수 N이 입력되면 2진수로 변환하여 출력하는 프로그램을 작성하세요. 단 재귀함수를 이용해서 출력해야 합니다.
▣ 입력설명
첫 번째 줄에 10진수 N(1<=N<=1,000)이 주어집니다.
▣ 출력설명
첫 번째 줄에 이진수를 출력하세요.
▣ 입력예제 1
11
▣ 출력예제 1
1011
import sys
from collections import deque
import heapq as hq
sys.stdin = open("input.text", "rt")
# input = sys.stdin.readline
N = int(input())
res = ""
def dfs(N):
if N == 0:
return #종료조건 !
else:
dfs(N//2)
print(N%2, end = "")
dfs(N)
🎈 코멘트
백트랙킹이란 함수 호출로 인해서 다른 일을 수행하고 이제 본문으로 돌아오는 것을 말한다. 여러 방향에서 돌아오는 것을 활용..
재귀함수에서 어떤 일을 먼저 해야하는지 잘 생각하자 !!
어떤 함수가 스택에 들어가는구나(재귀함수) 함수가 빠져나오면 스택의 최상단은 뭐가 되겠구나 이런 것만 이해해도 충분.