알고리즘 PS
[Python] 프로그래머스 LV.03 - 줄 서는 방법
on_doing
2021. 3. 13. 17:55
728x90
programmers.co.kr/learn/courses/30/lessons/12936
코딩테스트 연습 - 줄 서는 방법
n명의 사람이 일렬로 줄을 서고 있습니다. n명의 사람들에게는 각각 1번부터 n번까지 번호가 매겨져 있습니다. n명이 사람을 줄을 서는 방법은 여러가지 방법이 있습니다. 예를 들어서 3명의 사람
programmers.co.kr
[ 알고리즘 ]
구현
[문제 접근]
처음에 순열로 풀었다가 시간 초과 나서 어떻게 풀지 고민했던 문제.
해답은 팩토리얼로 구하는 간단한 문제였다programmers.co.kr/learn/courses/30/lessons/12936
코딩테스트 연습 - 줄 서는 방법
n명의 사람이 일렬로 줄을 서고 있습니다. n명의 사람들에게는 각각 1번부터 n번까지 번호가 매겨져 있습니다. n명이 사람을 줄을 서는 방법은 여러가지 방법이 있습니다. 예를 들어서 3명의 사람
programmers.co.kr
[ 알고리즘 ]
구현
[문제 접근]
처음에 순열로 풀었다가 시간 초과 나서 어떻게 풀지 고민했던 문제.
해답은 팩토리얼로 구하는 간단한 문제였다
[코드]
from math import factorial
def solution(n, k):
answer = []
result=[]
List=[i for i in range(1,n+1)]
while n>0:
n=n-1
num=factorial(n) # 숫자 하나당 가지고 있는 것
a=k//num # a로 시작하는
k=k%num # k번째 부터 다시 시작
if k==0:
a-=1
result.append(List[a])
List.remove(List[a])
return result
728x90