728x90
📌 문제
https://www.acmicpc.net/problem/2164
📌 알고리즘 풀이
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.ArrayDeque;
import java.util.Deque;
class Main {
public static void main(String[] args) throws NumberFormatException, IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int N = Integer.parseInt(br.readLine());
Deque<Integer> dq = new ArrayDeque<>();
for(int i=1; i<=N; i++) {
dq.offer(i);
}
while(dq.size() != 1) {
dq.pollFirst(); // 첫 번째 요소 제거
dq.offerLast(dq.pollFirst()); // 첫 번째 요소를 맨 뒤로 보내기
}
bw.write(String.valueOf(dq.pollFirst()));
bw.close();
}
}
728x90
'[알고리즘] > 알고리즘' 카테고리의 다른 글
[알고리즘] 백준 10799번 : 쇠막대기 (실버3) (0) | 2022.04.29 |
---|---|
[알고리즘] 백준 1966번 : 프린터 큐 (실버3) (0) | 2022.04.29 |
[알고리즘] 백준 1158번 : 요세푸스 문제 (실버4) (0) | 2022.04.28 |
[알고리즘] 백준 2002번 : 추월 (실버1) (0) | 2022.04.23 |
[알고리즘] 백준 6996번 : 애너그램 (브론즈1) (0) | 2022.04.23 |