반응형
https://www.acmicpc.net/problem/1655
1655번: 가운데를 말해요
첫째 줄에는 수빈이가 외치는 정수의 개수 N이 주어진다. N은 1보다 크거나 같고, 100,000보다 작거나 같은 자연수이다. 그 다음 N줄에 걸쳐서 수빈이가 외치는 정수가 차례대로 주어진다. 정수는 -10,000보다 크거나 같고, 10,000보다 작거나 같다.
www.acmicpc.net
접근 방법이 백준 키로거 문제와 흡사하다.
[Python] 백준 5397. 키로거
https://www.acmicpc.net/problem/5397 5397번: 키로거 문제 창영이는 강산이의 비밀번호를 훔치기 위해서 강산이가 사용하는 컴퓨터에 키로거를 설치했다. 며칠을 기다린 끝에 창영이는 강산이가 비밀번호 창에..
inspirit941.tistory.com
키로거에서는 왼쪽 / 오른쪽 커서값을 각각 stack 자료구로에 저장했다면,
여기서는 중앙값 기준으로 큰 값은 오른쪽, 작은 값은 왼쪽에 저장한다.
왼쪽 값은 max_heap로, 오른쪽 값은 min_heap로 구성하고, 중앙값은 항상 max_heap의 맨 첫번째 값이 되도록 구성한다.
1. 왼쪽과 오른쪽 원소의 길이가 같으면, 왼쪽에 새 값을 저장한다.
2. 만약 오른쪽 heap의 값보다 왼쪽 heap의 값이 더 크면, 오른쪽과 왼쪽의 원소값을 바꿔준다.
반응형
'프로그래밍 > 코딩테스트 문제풀이' 카테고리의 다른 글
[Python] 구름. 외주 (0) | 2020.03.17 |
---|---|
[Python] 백준 1005. ACM Craft (0) | 2020.03.14 |
[Python] Hackerrank. Climbing the Leaderboard (Medium) (0) | 2020.03.12 |
[Python] Hackerrank. Sherlock and the Valid String (Medium) (0) | 2020.03.11 |
[Python] Hackerrank. Big Sorting (Easy) (0) | 2020.03.10 |