N과 M(1)

김준오·2021년 8월 26일
0

알고리즘

목록 보기
40/91
post-thumbnail

문제

N과M(1)

n과m 시리즈를 풀어보려고 한다

풀이1 순열 모듈

import sys
input = sys.stdin.readline
from itertools import permutations

n,m = map(int,input().split())

arr = list(permutations(range(1,n+1),m))
for i in arr:
  for j in i:
    print(j, end=' ')
  print('')

python 필살기
순열 모듈 써서 처리했다
매번 쓸때마다 까먹는 모듈이지만

풀이2 재귀

재귀를 사용한 풀이

import sys
input = sys.stdin.readline

n,m = map(int,input().split())

arr = []
def perm():
  if len(arr) == m:
    print(' '.join(map(str,arr)))
    return
  
  for i in range(1,n+1):
    if i in arr:
      continue
    
    arr.append(i)
    perm()
    arr.pop()

perm()

원래 의도가 아니었을까 하는 풀이이다
재귀는 참 어려운것같다

속도는 둘다 비슷!

결과

profile
jooooon

0개의 댓글

관련 채용 정보