Queue
-
[Baekjoon Online Judge] 10845번: 큐문제 풀이/Baekjoon Online Judge 2021. 4. 4. 13:50
10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 요구사항 정수를 저장하는 큐를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. 명령은 총 여섯 가지이다. push X: 정수 X를 큐에 넣는 연산이다. pop: 큐에서 가장 앞에 있는 정수를 빼고, 그 수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다. size: 큐에 들어있는 정수의 개수를 출력한다. empty: 큐가 비어있으면 1, 아니면 0을 출력한다. front: 큐의 가장 앞에 있는 정수를 출..
-
[Baekjoon Online Judge] 1966번: 프린터 큐문제 풀이/Baekjoon Online Judge 2021. 3. 19. 14:00
1966번: 프린터 큐 여러분도 알다시피 여러분의 프린터 기기는 여러분이 인쇄하고자 하는 문서를 인쇄 명령을 받은 ‘순서대로’, 즉 먼저 요청된 것을 먼저 인쇄한다. 여러 개의 문서가 쌓인다면 Queue 자료구조에 www.acmicpc.net 요구사항 - 여러분도 알다시피 여러분의 프린터 기기는 여러분이 인쇄하고자 하는 문서를 인쇄 명령을 받은 ‘순서대로’, 즉 먼저 요청된 것을 먼저 인쇄한다. - 여러 개의 문서가 쌓인다면 Queue 자료구조에 쌓여서 FIFO - First In First Out - 에 따라 인쇄가 되게 된다. 하지만 상근이는 새로운 프린터기 내부 소프트웨어를 개발하였는데, 이 프린터기는 다음과 같은 조건에 따라 인쇄를 하게 된다. 현재 Queue의 가장 앞에 있는 문서의 ‘중요도’를..
-
[Baekjoon Online Judge] 1934번: 요세푸스 문제문제 풀이/Baekjoon Online Judge 2021. 3. 4. 11:16
1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 요구사항 - 1번부터 N번까지 N명의 사람이 원을 이루면서 앉아있고, 양의 정수 K(≤ N)가 주어진다. 이제 순서대로 K번째 사람을 제거한다. - 한 사람이 제거되면 남은 사람들로 이루어진 원을 따라 이 과정을 계속해 나간다. - 이 과정은 N명의 사람이 모두 제거될 때까지 계속된다. 원에서 사람들이 제거되는 순서를 (N, K)-요세푸스 순열이라고 한다. 입력 - 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) 출력 - 예제와 같이 요세푸스 순열을 출력한다. Queue를 활용하여 해결한다. 만약 3번째..
-
[Baekjoon Online Judge] 2178번: 미로 탐색문제 풀이/Baekjoon Online Judge 2021. 1. 12. 22:43
2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net [그래프 탐색] DFS와 BFS 1. 그래프란? 그래프는 vertex(정점)와 vertex(정점)를 이어주는 edge(간선)로 이루어져 있다. 정점은 대상이나 개체를 나타내고, 간선은 이들 간의 관계를 나타낸다. 상호 관계가 대칭적이지 않은 hyeonic.tistory.com N x M 크기의 배열로 표현된 미로가 있다. 요구사항 1. 1은 이동할 수 있는 칸을 나타낸다. 0은 이동할 수 없는 칸을 나타낸다. 2. (1, 1)에서 출발하여 (N, M)의 위치로 이동할 때 지나야 하는 최소의 칸..
-
4주차 과제: 제어문Programming/Java live study 2020. 12. 24. 02:11
4주차 과제: 제어문 · Issue #4 · whiteship/live-study 목표 자바가 제공하는 제어문을 학습하세요. 학습할 것 (필수) 선택문 반복문 과제 (옵션) 과제 0. JUnit 5 학습하세요. 인텔리J, 이클립스, VS Code에서 JUnit 5로 테스트 코드 작성하는 방법에 익숙해 github.com 목표 자바가 제공하는 제어문을 학습하세요. 학습할 것 - 선택문 - 반복문 - 과제 0. JUnit 5 학습하세요. - 과제 1. live-study 대시 보드를 만드는 코드를 작성하세요. - 과제 2. LinkedList를 구현하세요. - 과제 3. Stack을 구현하세요. - 과제 4. 앞서 만든 ListNode를 사용해서 Stack을 구현하세요. - (optional) 과제 5. Q..