Solution
삭제가 계속 이루어짐 --> LinkedList 이용
// 11866, 요세푸스 문제 0
package BOJ;
import java.io.*;
import java.util.*;
public class BOJ_11866 {
public static void main(String[] args) throws IOException{
// TODO Auto-generated method stub
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer st = new StringTokenizer(br.readLine());
int N = Integer.parseInt(st.nextToken());
int K = Integer.parseInt(st.nextToken());
LinkedList<Integer> list = new LinkedList<>(); // 연결 리스트
for (int i=0;i<N;i++) {
list.add(i+1);
}
bw.write("<");
int idx = 0;
while (list.size()>1) {
idx += (K-1); // -1: remove
idx %= list.size(); // idx >= list.size() --> index error
bw.write(list.remove(idx)+", ");
}
bw.write(list.get(0)+">");
bw.flush();
}
}
문제 출처 www.acmicpc.net/problem/11866
'알고리즘 > 구현' 카테고리의 다른 글
파이썬 | 백준 | 7453 | 합이 0인 네 정수 (0) | 2021.03.28 |
---|---|
자바 | 백준 | 16236 | 아기 상어 (0) | 2021.03.26 |
자바 | 파이썬 | 백준 | 10250 | ACM 호텔 (0) | 2021.01.22 |
자바 | 백준 | 10807 | 개수 세기 (0) | 2021.01.21 |
자바 | 파이썬 | 백준 | 2164 | 카드2 | Deque (0) | 2021.01.21 |