728x90
반응형
https://www.acmicpc.net/problem/2164
📌 접근 방식
Queue를 이용하면 쉽게 구현할 수 있었다!
✅ PASS CODE
import java.util.*;
import java.io.*;
public class Main {
public static void main(String [] args) throws IOException {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
Queue<Integer> queue = new LinkedList<>();
for(int i = 1; i <= N; i++) {
queue.add(i);
}
while(queue.size() != 1) {
queue.remove();
if(queue.size() == 1){
System.out.println(queue.remove());
break;
}
queue.add(queue.remove());
}
}
}
반응형
📌 느낀점
처음 이 문제를 봤을 때는 어떻게 해결할지 막막했는데, 큐를 쓰면 생각보다 정말 쉽게 해결된다는 걸 깨달았어요 😄
그리고큐의 연산은 O(1)이라 이 방법을 사용하면 500,000개의 카드도 빠르게 처리할 수 있다는 것도 느꼈습니당

728x90
반응형
'Coding Test > Baekjoon' 카테고리의 다른 글
[JAVA][Baekjoon] 2750번 수 정렬하기 (0) | 2025.01.01 |
---|---|
[JAVA][Baekjoon] 11286번 절댓값 힙 ⭐️⭐️⭐️⭐️⭐️ (0) | 2024.05.12 |
[JAVA][Baekjoon] 17298번 오큰수 ⭐️⭐️⭐️⭐️⭐️ (0) | 2024.05.07 |
[JAVA][Baekjoon] 1874번 스택 수열🌟 (0) | 2024.05.02 |
[JAVA][Baekjoon] 11003번 최솟값 찾기 ⭐️⭐️⭐️⭐️ (0) | 2024.05.02 |