큐(Queue)
-
백준 1335번: 트럭큐(Queue) 2020. 2. 6. 16:53
https://www.acmicpc.net/problem/13335 13335번: 트럭 문제 강을 가로지르는 하나의 차선으로 된 다리가 하나 있다. 이 다리를 n 개의 트럭이 건너가려고 한다. 트럭의 순서는 바꿀 수 없으며, 트럭의 무게는 서로 같지 않을 수 있다. 다리 위에는 단지 w 대의 트럭만 동시에 올라갈 수 있다. 다리의 길이는 w 단위길이(unit distance)이며, 각 트럭들은 하나의 단위시간(unit time)에 하나의 단위길이만큼만 이동할 수 있다고 가정한다. 동시에 다리 위에 올라가 있는 트럭들의 무게의 합은 다리의 최 www.acmicpc.net 큐를 이용하면 쉽게 풀리는 문제 L -> 다리가 견딜수 있는 무게 W -> 다리의 길이 키워드 - queue Source #include..
-
백준 1715번: 카드 정렬하기큐(Queue) 2018. 8. 5. 15:27
https://www.acmicpc.net/problem/1715 1715번: 카드 정렬하기 정렬된 두 묶음의 숫자 카드가 있다고 하자. 각 묶음의 카드의 수를 A, B라 하면 보통 두 묶음을 합쳐서 하나로 만드는 데에는 A+B 번의 비교를 해야 한다. 이를테면, 20장의 숫자 카드 묶음과 30장의 숫자 카드 묶음을 합치려면 50번의 비교가 필요하다. 매우 많은 숫자 카드 묶음이 책상 위에 놓여 있다. 이들을 두 묶음씩 골라 서로 합쳐나간다면, 고르는 순서에 따라서 비교 횟수가 매우 달라진다. 예를 들어 10장, 20장, 40장의 묶음이 있다면 www.acmicpc.net 키워드 - 힙, 구현, 우선순위큐 Approach 정수 10 20 40 이 입력으로 들어오고 큐에 쌓이는 순서는 10 20 40 최상..
-
백준 10866번: 덱큐(Queue) 2018. 6. 20. 16:51
https://www.acmicpc.net/problem/10866 1. 문제정수를 저장하는 덱(Deque)를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. 명령은 총 여덟 가지이다. push_front X: 정수 X를 덱의 앞에 넣는다.push_back X: 정수 X를 덱의 뒤에 넣는다.pop_front: 덱의 가장 앞에 있는 수를 빼고, 그 수를 출력한다. 만약, 덱에 들어있는 정수가 없는 경우에는 -1을 출력한다.pop_back: 덱의 가장 뒤에 있는 수를 빼고, 그 수를 출력한다. 만약, 덱에 들어있는 정수가 없는 경우에는 -1을 출력한다.size: 덱에 들어있는 정수의 개수를 출력한다.empty: 덱이 비어있으면 1을, 아니면 0을 출력한다.front: 덱의 가장 앞에 ..
-
백준 10845번: 큐큐(Queue) 2018. 6. 20. 13:25
https://www.acmicpc.net/problem/10845 1. 문제정수를 저장하는 큐를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. 명령은 총 여섯 가지이다. push X: 정수 X를 큐에 넣는 연산이다.pop: 큐에서 가장 앞에 있는 정수를 빼고, 그 수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.size: 큐에 들어있는 정수의 개수를 출력한다.empty: 큐가 비어있으면 1, 아니면 0을 출력한다.front: 큐의 가장 앞에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.back: 큐의 가장 뒤에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다. 2. 알고리즘큐 자료형 사..
-
백준 1927번: 최소힙큐(Queue) 2018. 6. 17. 13:54
https://www.acmicpc.net/problem/1927 1. 문제 요약최소힙 구현 문제 2. 알고리즘priority_queue 사용 greater 사용하여 최소힙으로 사용 3. 코드12345678910111213141516171819202122232425262728293031323334#include #include #include #include #include #include #include #include using namespace std; int main() { std::ios::sync_with_stdio(false); cin.tie(0); priority_queue q; int n; cin >> n; while(n--) { int cand; cin >> cand; if (cand ..
-
백준 11279번 : 최대 힙큐(Queue) 2018. 6. 17. 13:45
https://www.acmicpc.net/problem/11279 1. 문제 요약 맥스 힙 이해 2. 알고리즘 STL 자료구조인 priority_queue 를 사용하여 해결 3. 코드 123456789101112131415161718192021222324252627282930313233#include #include #include #include #include #include #include using namespace std; int main() { std::ios::sync_with_stdio(false); cin.tie(0); priority_queue q; int n; cin >> n; while(n--) { int cand; cin >> cand; if (cand == 0) { if (q...