Baekjoon Case
[백준 #15649] N과 M(1) - 파이썬(python)
Scarlett_C
2021. 8. 13. 12:30
728x90
처음엔 굉장히 쉬워보였는데,
M값을 왜 받아야 하지.. 라고 생각했는데
역시나 필요했다.
재귀함수를 써 볼까 생각도 했는데
왠지 파이썬에는 이미 구현되어 있는 함수가 있을 것 같아서
열심히 구글링을 했다.
from itertools import permutations
N,M=map(int,input().split())
numlist=[i for i in range(1,N+1)]
setlist=list(permutations(numlist,M))
for i in range(len(setlist)):
for j in range(M):
print(setlist[i][j],end=' ')
print()
재귀함수를 구현 해 볼까 했는데
굉장히 골치가 아파보여서 굳이..? 라는 생각이 들었다.
있는 것을 잘 활용하는것도.. 좋지않을까..
다른 사람들은 어떻게 했나 한 번 봤는데,
from itertools import permutations
N,M=map(int,input().split())
numlist=map(str,range(1,N+1))
setlist=list(permutations(numlist,M))
print('\n'.join(list(map(' '.join,setlist))))
이런식으로 했다.
전 문제에서는 int로 안받아서 틀렸는데..
이건 상관 없는건가..
str로 했을때 속도가 훨씬 빠르긴 빨랐다.
728x90