일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- DP
- Calibration
- 마이크로프로세서
- 마법의숲탐색
- 포탑부수기
- ros
- 이진탐색
- 코드트리
- BFS
- DenseDepth
- 구현
- 루돌프의반란
- 백준
- 코드트리빵
- 싸움땅
- 3Dreconstruction
- 슈퍼컴퓨터클러스터
- ARM
- 왕실의기사대결
- 시뮬레이션
- 수영대회결승전
- dfs
- ICER
- 조합
- PQ
- 순서대로방문하기
- 소프티어
- 토끼와 경주
- 나무박멸
- 삼성기출
- Today
- Total
목록PQ (2)
from palette import colorful_colors
https://www.acmicpc.net/problem/20920 언어: C++, 시간: 160ms 💡문제 아이디어Hash와 PQ에서의 구조체 정렬을 연습하기 좋은 문제.Hash를 이용해 시간복잡도를 O(1)로 빈도수를 저장하고, PQ와 구조체를 이용해 문제의 조건으로 정렬한다. 💡문제 코드#define _CRT_SECURE_NO_WARNINGS#include #include #include #include #include using namespace std;// pq에 사용할 구조체struct word{ int wordFreq; int wordLen; string wordName;};// pq용 정렬 구조체 - 1. 빈도 내림차순, 2. 길이 내림차순, 3.ASCHII오름차순struct compa..
https://www.acmicpc.net/problem/1715언어: C++, 시간: 36ms 접근방법정렬을 계속 반복하는 그리디 문제!가장 작은 숫자가 top에 오는 pq를 만들고 난 후,숫자들 중 가장 작은 숫자와 그 다음 숫자를 더하고, 이걸 정답 변수에 더해주고 난 후 다시 pq에 넣는다. ....→ 이걸 pq 크기가 1이 될 때까지 반복하기 고려사항이 문제는 모두 int로 풀이해도 된다.문제에서 N은 10만, 카드묶음의 최대 숫자는 1000인데,정답 변수에는 1000x10만 + 2000x5만 + 4000x2만5천 + 8000x만2500, ... 이런식으로 1억이 계속 더해진다.이 때 log100000 = 16.609... 이므로, 1억이 16.609... 번 더해지는 셈이다.약 16.6억 ..