[백준 문제] P15649 N과 M(1)


[백준 문제] P15649 N과 M(1)

참고 사이트

  • 재귀 함수를 이용해서 수열을 만든다.
  • 사실 약간 복잡하긴 한데 천천히 다시 풀어봐야겠다.
  • 파이참 디버깅을 통해서 순서에 대해 한번더 볼 필요 있겠음.
n,m = map(int,input().split())

check = [False] * (n + 1)
a = [0] * m


def go(index, n, m):
    if index == m:
        for i in range(m):
            print(a[i], end=' ')

        print()  # 띄어쓰기

        return  # def 나가기
    for i in range(1, n + 1):
        if check[i]:
            continue # for문으로 되돌아가기
        check[i] = True
        a[index] = i
        go(index + 1, n, m)
        check[i] = False


go(0, n, m)





© 2018. by statssy

Powered by statssy