문제 : 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

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

 

코딩테스트 연습 - K번째수

[1, 5, 2, 6, 3, 7, 4] [[2, 5, 3], [4, 4, 1], [1, 7, 3]] [5, 6, 3]

programmers.co.kr

▶ 코드

import copy

def solution(array, commands):
    res = []
    for a in commands:
        tmp = copy.deepcopy(array)
        tmp = tmp[a[0]-1:a[1]]
        tmp.sort()
        res.append(tmp[a[2]-1])
    return res

#solution([1,5,2,6,3,7,4], [[2,5,3],[4,4,1],[1,7,3]])

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

[Level 2] H-Index  (0) 2020.05.16