https://programmers.co.kr/learn/courses/30/lessons/12936
완전 탐색은 시간 초과가 뜨고 나열해서 적다 보면 규칙이 있다 이를 활용하면 풀 수 있음
나의 풀이
import math
def solution(n, k):
answer = []
number = [i for i in range(1, n+1)]
while (n != 0):
temp = math.factorial(n) // n
index, k = k//temp, k%temp
if k == 0:
answer.append(number.pop(index-1))
else :
answer.append(number.pop(index))
n -= 1
return answer
'Programming > Programmers' 카테고리의 다른 글
[프로그래머스] 풍선 터트리기 (Python) (0) | 2021.11.14 |
---|---|
[프로그래머스] 최고의 집합 (Python) (0) | 2021.11.13 |
[프로그래머스] 야근 지수(Python) (0) | 2021.11.13 |
[프로그래머스] 멀리 뛰기(Python) (0) | 2021.11.13 |
[프로그래머스] 거스름돈 (Python) (0) | 2021.11.13 |
댓글