728x90
반응형
https://www.acmicpc.net/problem/2164
LinkedList를 이용하여 구현하면 된다.
while문을 이용하여 LinkedList의 size가 1이 될 때까지
맨 앞 카드 한 장을 버리고 ==> LinkedList.remove(0);
그 다음 한 장을 맨 뒤에 놓는다 ==> int now = LinkedList.remove(0); -> LinkedList.add(now);
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.LinkedList;
public class P2164 {
public static void main(String[] args) throws NumberFormatException, IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
LinkedList<Integer> list = new LinkedList<>();
int n = Integer.parseInt(br.readLine());
for (int i = 1; i <= n; i++) {
list.add(i);
}
while (list.size() > 1) {
list.remove(0); // 맨 앞 카드 제거
int now = list.remove(0);
list.add(now); // 한 장 뽑아서 뒤에 넣기
}
System.out.println(list.get(0));
}
}
728x90
반응형
'코딩 > 백준-자바' 카테고리의 다른 글
[자바] 백준 2512번: 예산 (0) | 2023.02.28 |
---|---|
[자바] 백준 20920번: 영단어 암기는 괴로워 (0) | 2023.02.27 |
[자바] 백준 9017번: 크로스 컨트리 (0) | 2023.02.26 |
[자바] 백준 1244번: 스위치 켜고 끄기 (0) | 2023.02.25 |
[자바] 백준 20125번: 쿠키의 신체 측정 (0) | 2023.02.24 |
댓글