문제
https://school.programmers.co.kr/learn/courses/30/lessons/42889#
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
lv1 수준의 문제이다
def solution(N, stages):
answer = []
stages.sort()
D = len(stages)
arr =[]
for i in range(1,N+1):
arr.append(stages.count(i))
arr2 = []
print(arr)
for idx,i in enumerate(arr):
if D == 0:
arr2.append(0)
else:
arr2.append(i/D)
D = D-i
d = {i+1:arr2[i] for i in range(len(arr2))}
d = dict(sorted(d.items(), key=lambda x:x[1],reverse=True))
for i in d.keys():
answer.append(i)
return answer
다른사람의 풀이를 보니 처음부터 딕셔너리넣고 푸는게 좀 더 짧고 깔끔했을것 같다
'💡 Codeing Test > 프로그래머스' 카테고리의 다른 글
프로그래머스) 배열의 평균값 (Java) (0) | 2023.02.24 |
---|---|
[프로그래머스] 최댓값과 최솟값 (python) (1) | 2023.02.15 |
[프로그래머스] 핸드폰 번호 가리기 (python) (0) | 2023.02.14 |
[프로그래머스] 시저암호 (python) (0) | 2023.02.14 |
[프로그래머스] 가장 큰 수 (python) (0) | 2023.02.05 |