Adventure Time - Finn 3
본문 바로가기
코테연습/python

부분집합 구하기(DFS)

by hyun9_9 2026. 5. 12.

자연수 N이 주어지면 1부터 N까지의 원소를 갖는 집합의 부분집합을 모두 출력하는 프로그램 을 작성하세요.

import sys
# sys.stdin=open("input.txt","rt")
# n,m = map(int,input().split())
# n = int(input())
# arr = list(map(int,input().split()))

def DFS(v):
    if v==n+1:
        for i in range(1,n+1):
            if ch[i]==1:
                print(i,end=' ')
        print()
    else:
        ch[v]=1
        DFS(v+1)
        ch[v]=0
        DFS(v+1)



if __name__ =="__main__":
    n = int(input())
    ch=[0]* (n+1)
    DFS(1)

'코테연습 > python' 카테고리의 다른 글

중복순열 구하기  (0) 2026.05.14
합이 같은 부분집합(DFS : 아마존 인터뷰)  (0) 2026.05.13
이진트리 순회(깊이우선탐색)  (0) 2026.05.11
재귀함수를 이용한 이진수 출력  (0) 2026.05.09
최대힙  (0) 2026.05.07