문제
내 코드
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.LinkedList;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer sz = new StringTokenizer(br.readLine());
int N = sz.hasMoreTokens() ? Integer.parseInt(sz.nextToken()) : 0;
int K = sz.hasMoreTokens() ? Integer.parseInt(sz.nextToken()) : 0;
LinkedList<Integer> list = new LinkedList<>();
int cnt = 0;
while (cnt < N) {
list.add(++cnt);
}
cnt = 0;
StringBuffer sb = new StringBuffer("<");
while (cnt < N) {
for (int i = 1; i < K; i++) {
list.addLast(list.pop());
}
sb.append(list.pop() + ", ");
cnt++;
}
System.out.println(sb.replace(sb.length() - 2, sb.length(), ">"));
}
}
1. LinkedList 만들고 기본값 넣기
LinkedList<Integer> list = new LinkedList<>();
int cnt = 0;
while (cnt < N) {
list.add(++cnt);
}
2. 결과 만들 변수 생성
cnt = 0;
StringBuffer sb = new StringBuffer("<");
3. 결과 도출
while (cnt < N) {
for (int i = 1; i < K; i++) {
list.addLast(list.pop());
}
sb.append(list.pop() + ", ");
cnt++;
}