강의로 돌아가기
류호민

문제 오류가 있습니다.

예제의 3회 이상 인용된 논문은 4편입니다. 이상, 이하, 초과, 미만의 사용을 좀 구체적으로 해야겠습니다.

또 h의 최대값을 찾아야 한다는 조건이 추가 되어야 할 것 같습니다. 예제에서는 1도 정답이 될 수 있지 않나요?

2 개의 답변
siyoon210

1번 이하 인용된 논문의 갯수가 2개 이므로 1은 될 수 없습니다.

  • Jaehee Weon
    h번 이하에 인용된 논문에 대해서는 조건이 없습니다 Jaehee Weon 2019.04.24 10:59
Kim Min-jun

문제가 빡치긴 했어요 ㅠ

하나 혼동하면 안되는게 우리가 리스트에서 알수있는 원소 값과 H-index의 H는 전혀 다른 거니 분리해서 생각하세요.

이해를 위해 하나 예를 들어 보면
[0,6,7,9,11]에서 5편중, h번 이상 인용된 논문이 h편 이상이고 나머지 논문이 h번 이하 조건을 찾아 보면

for i in range(len(citations)): ## 오름 차순 정렬 리스트 순회 why? 이렇게 하면 리스트를 순회할 때 현재 pivot 원소 이후의 원소는 모두 자기보다 크다고 할 수 있겠죠?
if citations[i]>= len(citations) - i: ## ( h번 이상 인용된 논문이 h편 이상이고 나머지 논문이 h번 이하 조건)
(오름 차순 조건을 만족하니 자기 이후는 모두 자기보다 크다 할 수 있고 총 배열 길이에서 현재 자기자신의 인덱스를 빼면 만족하는
개수를 알수 있고 그걸 지금 pivot의 인용 횟수보다 작거나 같기만 하면 조건을 만족하는 거죠)
([0,3,5,7,9]에서 3을 검사한다고 생각해봐요 이해가 되실꺼에요)
return len(citations) - i ## 이때 조건에 만족하는 최소 값이 바로 h-index.

답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.