[Programmers] H-Index
Updated:
H-Index
H-Index λ₯Ό ν΄λ¦νλ©΄ λ°λ‘ μ΄λνλ€.
H-Index λ κ°λ¨ν λ§νλ©΄ nν μ΄μ μΈμ© λ λ Όλ¬Έμ΄ nκ° μ΄μμΌ λ, n μ μ΅λκ°μ΄λ€.
μν€λ°±κ³Ό λ₯Ό ν΄λ¦νλ©΄ λ μμΈν μ€λͺ μ λ³Ό μ μλ€.
νλ‘κ·Έλλ¨Έμ€μ λμμλ μ€λͺ μ λ³΄μ§ μλ κ²μ μΆμ²νλ€.
λ무 μ 맀νκ³ ν·κ°λ¦¬κ² μ€λͺ μ μ¨λμλ€.
μ¬μ§μ΄ μ€λ΅ μ½λλ μ λ΅ μ½λλ‘ ν΅κ³Όκ° λλ μ‘°μ¬νλλ‘ νμ
λ°μ μ½λλ μ€λ΅ μ½λμ΄μ§λ§ μ λ΅ μ½λλ‘ ν΅κ³Ό λλ μ½λμ΄λ€.
def solution(citation):
H_Index = 0
sort_citation = set(sorted(citation, reverse=True))
while sort_citation:
citation_cnt = 0
citation_num = sort_citation.pop()
for val in citation:
if val >= citation_num:
citation_cnt += 1
if citation_cnt <= citation_num:
if H_Index < citation_cnt:
H_Index = citation_cnt
return H_Index
μ μ½λμμ 13λ² μ§Έ μ€μ if λ¬Έμ λ³Έλ€λ©΄ H-Index μ μ λ°λλ‘ μ€νμ΄ λλ€.
nν μ΄μ μΈμ© λ λ Όλ¬Έμ΄ nκ° μ΄νμΌ λ H-Index λ₯Ό κ°±μ νλ€.
[3, 3, 3, 3] μ΄ μ£Όμ΄μ§λ€λ©΄ H-Indexλ 4κ° λμ΄μΌ νλλ° κ²°κ³Όλ 0μ΄ λλ€.
λ [0, 1, 3, 5, 5, 5, 5, 5, 5, 6] μ΄ μ£Όμ΄μ§ κ²½μ° return κ°μ 5κ° λμ΄μΌ νλλ° 1μ΄ λμ¨λ€.
μ΄λ κ² μ‘°κΈ λΆμ€ν λ¬Έμ μΈ κ² κ°μΌλ μΌλ₯Έ νκ³ λμ΄κ°μ !!
def solution(citation):
h = 0
for citation_num in range(max(citation) + 1):
cnt = 0
for val in citation:
if citation_num <= val:
cnt += 1
if citation_num <= cnt:
h = citation_num
return h
μμ μμ± ν μ€λ₯κ° μλ μ½λλ μΈμ© νμμΈ n μ 1λΆν° citationμ max κ° κΉμ§ νμΈμ νμ§ μκ³
citationμ μλ μΈμ© νμλ§ κ²μ¬λ₯Ό νλ€.
μ μ½λλ μΈμ© νμλ₯Ό 0 λΆν° citationμ max κ° κΉμ§ λͺ¨λ κ²μ¬λ₯Ό νλ€.
Leave a comment