2019.01.29) 백준 2075번 풀이
2019. 1. 29. 23:19ㆍ프로그래밍(주력)/백준 문제풀이
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 31 | n = int(input()) find = list() for i in input().split(' '): i = int(i) if len(find) == 0: find.append(i) continue if i > find[0]: find.insert(0, i) elif find[0] > i > find[-1]: for k in range(len(find) - 1): if find[k] > i > find[k + 1]: find.insert(k + 1, i) else: find.append(i) for i in range(n - 1): for j in input().split(' '): j = int(j) if j > find[0]: find.insert(0, j) find.pop(n) elif find[0] > j > find[-1]: for k in range(len(find) - 1): if find[k] > j > find[k + 1]: find.insert(k + 1, j) find.pop(n) print(find[-1]) | cs |
위 코드는 주인장이 파이썬3(pypy3)으로 구현한 코드이다.
선택정렬을 통해 힙을 구현하였다.
처음 받는 5개로 큰순서대로 5번인 숫자들만 find 리스트 안에 넣고,
6번째 이상부턴 .pop()으로 제거하였다.
'프로그래밍(주력) > 백준 문제풀이' 카테고리의 다른 글
2019.02.03) 백준 1167번 풀이 (PyPy3) (0) | 2019.02.03 |
---|---|
2019.02.02) 백준 11725번 풀이 (PyPy3) (0) | 2019.02.02 |
2019.02.01) 백준 1991번 풀이 (0) | 2019.02.01 |
2019.01.31) 백준 2231번 풀이 (0) | 2019.01.31 |
2019.01.30) 백준 2309번 풀이 (0) | 2019.01.30 |