일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Image Segmentation
- Python
- Object Detection
- 3줄 논문
- hackerrank
- 큐
- pytorch
- 한빛미디어
- 코딩테스트
- Recsys-KR
- Segmentation
- 프로그래머스
- TEAM EDA
- 입문
- 파이썬
- 추천시스템
- 협업필터링
- 엘리스
- 나는리뷰어다
- 나는 리뷰어다
- 알고리즘
- eda
- Machine Learning Advanced
- DFS
- 튜토리얼
- TEAM-EDA
- DilatedNet
- MySQL
- Semantic Segmentation
- 스택
- Today
- Total
목록우선순위 큐 (2)
TEAM EDA
점토 놀이 엘리스씨는 가장 적은 힘을 사용하여 주어진 모든 점토를 합치고 싶어졌습니다. 엘리스씨를 도와 n개의 점토를 하나의 덩이로 합치기 위해 필요한 힘의 크기의 합의 최솟값을 구하는 프로그램을 작성하세요. 만약 무게가 a인 점토와 무게가 b인 점토를 한 덩이가 되도록 합치기 위해서는 a+b의 힘을 들여야 합니다. [입력값] 〔1〕 점토의 개수 n (1≤n≤100,000) 〔2〕 n개의 숫자(각 점토의 무게) [결과값] 모든 점토를 한 덩이로 합치기 위해 필요한 힘의 크기의 합의 최솟값을 출력합니다. [제한 시간] 5초 이내에 결과가 출력되어야 합니다. [입력 예시] 4 1 5 7 3 [출력 예시] 29 [예시 설명] 4개의 점토가 있고 각각 1, 5, 7, 3의 무게를 가진다면 다음의 순서대로 합치는..
우선순위 큐 정의 : 원소를 제거할 시, 가장 우선순위가 높은 원소를 제거 배열로 구현 삽입 : O(1) 삭제 : O(n) 힙으로 구현 (부모의 값이 항상 자식보다 작은 완전 이진 트리) 삽입 : O(logn) 삽입 : 가장 마지막 노드에 값을 삽입하고 우선순위를 맞게 정렬 - 정렬에 드는 시간 복잡도 O(logn) heap.insert(4)를 통해서 4라는 값을 삽입하려고 함 빈 노드의 위치에 삽입 정렬을 통해 우선순위를 맞춤 삭제 : O(logn) 삭제 : 부모를 삭제하고 남은 노드를 우선순위에 맞게 정렬 - 정렬에 드는 시간 복잡도 O(logn) heap.pop()을 통해서 2를 제거하려고 함 먼저, 2를 제거 가장 마지막 노드에 있는 값을 맨 위의 노드에 삽입 이후, 정렬을 통해서 우선순위를 맞춤..