Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |
Tags
- 포천 가볼만한 곳
- 마살라 커리
- 차덕분
- 중국
- 영종도맛집
- 을왕리데이트
- 서울역 상견례
- 산정호수 한화리조트
- m1000RR
- 인천맛집
- 영종도디저트
- 룸식당
- 청키파이
- 포천 관광지
- 서울 부모님과 식사
- 가성비 오마카세
- 글로우펏
- 남양주 여행지
- 송도 오마카세
- 이색데이트
- 서울로인
- 책
- 서빙로봇
- 조정래
- 바다앞꼬막집
- 구읍뱃터맛집
- 영등포 가볼만한 곳
- 구읍뱃터디저트
- 현백 디저트
- 정글만리
Archives
- Today
- Total
ISTP의 간단명료 블로그
[프로그래머스] H-Index 테스트케이스 / 정렬 / 리스트 조건 본문
문제

테스트케이스

풀이
def solution(citations):
if max(citations)==0:
return 0
for h in range(max(citations), 0, -1):
if len([x for x in citations if x>=h])>=h:
return h
다른사람 풀이
def solution(citations):
citations.sort(reverse=True)
answer = max(map(min, enumerate(citations, start=1)))
return answer
1) min(index,value) 부분은 index와 value 중에서 작은 값 찾기. 해당 인용수 이상의 논문개수와 해당 논문의 인용수 중 더 작은 숫자를 고르는 작업
ex) min(1, 6), min(2, 5), min(3, 4), min(4, 1), min(5, 0) -> (1, 2, 3, 1, 0)
2) max(~) 값은 가능할 수 있는 모든 h-index 중 가장 큰 값을 추출하는 부분. 앞에서 골라진 (1, 2, 3, 1, 0) 중 가장 큰 숫자를 뽑아 실제 h-index를 구하는 방법
느낀점
1. 테스트케이스를 생각할 때, 0의 경우의 수 생각해볼 것
'풀다' 카테고리의 다른 글
| [프로그래머스] 소수 찾기 / 완전탐색 / 배열의 경우의 수(permutation) (0) | 2023.07.10 |
|---|---|
| [프로그래머스] 날짜 비교하기 반례 테스트케이스 / 배열 부등호 (0) | 2023.06.29 |
| [프로그래머스] 디스크 컨트롤러 테스트 케이스 / deque (0) | 2023.06.23 |
| [프로그래머스] 더 맵게 / python 힙 자료구조 모듈 heapq (0) | 2023.06.21 |
| [프로그래머스] 프로세스 / 스택, 큐 / any, all (0) | 2023.06.18 |