[실버3] 15651번 : N과 M(3)

Quesuemon·2021년 4월 6일
0

코딩테스트 준비

목록 보기
63/111

🛠 문제

https://www.acmicpc.net/problem/15651


👩🏻‍💻 해결 방법

같은 수를 여러번 고르는 것이 가능했기에 방문 횟수를 저장하기 위한 visit 리스트를 사용했다

소스 코드

n, m = map(int, input().split())
out = []
visit = [0] * (n + 1)

def solve(count, n, m):
  if count == m:
    print(' '.join(map(str, out)))
    return
  
  for i in range(1, n+1):
    if visit[i] < m:
      visit[i] += 1
      out.append(i)
      solve(count+1, n, m)
      visit[i] -= 1
      out.pop()

solve(0, n, m)      

0개의 댓글