H-Index
코딩테스트 연습 - H-Index
H-Index는 과학자의 생산성과 영향력을 나타내는 지표입니다. 어느 과학자의 H-Index를 나타내는 값인 h를 구하려고 합니다. 위키백과1에 따르면, H-Index는 다음과 같이 구합니다. 어떤 과학자가 발표
programmers.co.kr
- 내 풀이
- 계수정렬 방식 참고해서 각 값의 횟수를 가지는 result 리스트 생성
- 큰 값부터 횟수 더해서 인덱스 값과 크거나 같은 값 중 가장 큰 값 출력
- 📍for idx,r in enumerate(result[::-1])
- 맨 마지막 인덱스부터 불러오더라도 출력되는 인덱스는 0부터
- → 구하려는 인덱스 값: len(result)-1-idx
def solution(citations):
result=[0]*(max(citations)+1)
answer=0
sum=0
for c in citations:
result[c]+=1
for idx,r in enumerate(result[::-1]):
sum+=r
if sum>=len(result)-1-idx:
answer=max(answer,len(result)-1-idx)
return answer
- 다른 사람 풀이
def solution(citations):
citations=sorted(citations)
l=len(citations)
for i in range(l):
if citations[i]>=l-i:
return l-i #l-i 값이 큰 값의 개수와 같음
return 0
print(solution([3,0,6,1,5]))
#결과
3'코딩테스트 > 프로그래머스' 카테고리의 다른 글
| [프로그래머스] [Level 2] 숫자의 표현 (0) | 2022.04.26 |
|---|---|
| [프로그래머스] [Level 2] [2022 KAKAO BLIND RECRUITMENT] 주차 요금 계산 (0) | 2022.04.25 |
| [프로그래머스] [Level 2] 최댓값과 최솟값 (0) | 2022.04.21 |
| [프로그래머스] [Level 2] 최솟값 만들기 (0) | 2022.04.20 |
| [프로그래머스] [Level 2] [스택/큐] 주식가격 (0) | 2022.04.20 |