[파이썬 알고리즘 문제풀이] - Section6 / 완전탐색 (백트랙킹, 상태트리와 CUT EDGE)-DFS(깊이우선탐색)기초 - 1

Chooooo·2023년 2월 2일
0

재귀함수를 이용한 이진수 출력
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)

🎈 코멘트
백트랙킹이란 함수 호출로 인해서 다른 일을 수행하고 이제 본문으로 돌아오는 것을 말한다. 여러 방향에서 돌아오는 것을 활용..
재귀함수에서 어떤 일을 먼저 해야하는지 잘 생각하자 !!
어떤 함수가 스택에 들어가는구나(재귀함수) 함수가 빠져나오면 스택의 최상단은 뭐가 되겠구나 이런 것만 이해해도 충분.

profile
back-end, 지속 성장 가능한 개발자를 향하여

0개의 댓글