[알고리즘] 요세푸스 문제
2024. 2. 5. 17:52ㆍ알고리즘 풀이/Java
https://www.acmicpc.net/problem/1158
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.StringTokenizer;
public class Main {
static StringBuilder sb = new StringBuilder();
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
int N = Integer.parseInt(st.nextToken());
int K = Integer.parseInt(st.nextToken());
sb.append("<");
ArrayList<Integer> numbers = new ArrayList<>();
for (int i = 1; i <= N; i++) {
numbers.add(i);
}
int index = 0;
while (numbers.size() > 1) {
index = (index + (K - 1)) % numbers.size();
sb.append(numbers.remove(index)).append(", ");
}
sb.append(numbers.get(0)).append(">");
System.out.println(sb);
}
}
나의 풀이
- index만 움직여준다.
'알고리즘 풀이 > Java' 카테고리의 다른 글
[알고리즘] 트리 정리 (0) | 2024.02.06 |
---|---|
[알고리즘][X] AC (1) | 2024.02.06 |
[알고리즘] 한빈이와 Spot Mart (0) | 2024.02.05 |
[알고리즘] 수열 편집 (1) | 2024.02.05 |
[알고리즘] 암호문3 (0) | 2024.02.02 |