문제 : https://programmers.co.kr/learn/courses/30/lessons/42747

 

코딩테스트 연습 - H-Index

H-Index는 과학자의 생산성과 영향력을 나타내는 지표입니다. 어느 과학자의 H-Index를 나타내는 값인 h를 구하려고 합니다. 위키백과1에 따르면, H-Index는 다음과 같이 구합니다. 어떤 과학자가 발표

programmers.co.kr

▶ 코드

def solution(citations):

    ans = []   
    citations.sort() # [0,1,3,5,6]
    #print(citations)
    
    for i in range(1, len(citations)+1): # 1번~N번 인용
        for j in range(len(citations)):
            if i <= citations[j]: # 인용횟수i 보다 크거나 같은 배열원소 찾으면 
                if len(citations[j:]) < i : # 원소갯수가 인용횟수보다 낮다면 
                    break # 다음 i로 넘어가기 
                else: # 원소갯수가 인용회수 '이상' 이라면(=같거나 크다면)
                    ans.append(i)
               
    #print(ans)
    if len(ans) == 0: # 예외처리 
        return 0
    else:
        return max(ans)
        
#solution([3,0,6,1,5])
#solution([5,5,5,5,5])

'[프로그래머스] 코테 고득점 Kit > 정렬' 카테고리의 다른 글

[Level 1] K번째수  (0) 2020.05.16