티스토리 뷰
programmers.co.kr/learn/courses/30/lessons/42747?language=python3
문제는 이렇다. 발표된 n개의 논문에서 h편의 논문은 h편 이상 인용되었고 나머지는 h이하 인용되었을때 그 h값을 구하는 문제.
문제가 너무 헷갈려서 다른 사람의 풀이를 해석하기로 했다 ㅠㅠ
def solution(c):
c.sort(reverse=True)
answer = list(map(tuple, enumerate(c, start= 1)))
return answer
solution([3, 0, 6, 1, 5])
>>>> [(1, 6), (2, 5), (3, 3), (4, 1), (5, 0)]
내림차순으로 sort된 c를 원래 enumerate 형태인 tuple로 해주고 list형태로 뽑아보았다.
enumerate(c, start = 1)의 특성상 순회하면서 번호를 붙여주는데 start = 1로 1부터 번호가 붙는다.
그리고 내림차순으로 정렬된 리스트를 순회하니까 결과는 [(1, 6), (2, 5), (3, 3), (4, 1), (5, 0)] 가 나온다.
이 튜플들을 min 으로 뽑아주면
def solution(c):
c.sort(reverse=True)
answer = list(map(min, enumerate(c, start= 1)))
return answer
soultion([3, 0, 6, 1, 5])
>>>>[1, 2, 3, 1, 0]
1,2,3,1,0 이 나온다. 이것중 max가 H-index라는것.
결국
answer = list(map(tuple[0], enumerate(c, start= 1)))
이렇게 H-index를 찾아준다.
사실 문제가 너무 난해하게 느껴져서 계속 헷갈려서 맞는코드를 짜다가도 계속 헤맸다.
아직 레벨업을 많이 해야겠다고 느껴졌다. map과 enumerate의 사용법 또한 점점 익숙해져간다.
처음에 enumerate는 써본적이 없어서 어렵게만 느껴졌으나 이렇게 사용법을 익히다보니 어떻게 쓰는지 이해가 간다.
start= 로 시작 넘버까지 정할 수 있다는걸 배웠다.
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 부트스트랩 커스텀
- vue bootstrap scss
- 배열 특정요소 제거
- heap max
- 프로그래머스
- bootstrap5
- dict 연속성
- 코드잇 강의
- Java수료
- javascript 객체배열
- 파이썬
- 윈도우 chmod
- 코딩테스트
- Vue.js 입문
- windows10 chmod 400
- vue.js 특징
- MySQL 문제
- Vue.js강의
- Python
- vue.js 개념
- chmod 400
- 프로그래머스 코딩테스트
- 배열 특정객체 제거
- JavaScript
- 입문
- 다리위를지나는트럭
- Vue.js
- 데이터 사이언스 프로그래밍 파이썬
- Vue.js 프로젝트 투입 일주일 전
- Vue.js 책
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함