import java.util.*;
class Main {
public int solution(int n, int k){
int answer=0;
Queue<Integer> Q = new LinkedList<>(); // 링크드 리스트로 구현됨
for(int i=1; i<=n; i++){
Q.offer(i);
}
while (!Q.isEmpty()){
for(int i=1; i<k; i++){
Q.offer(Q.poll()); // poll도 꺼내서 리턴함.
}
Q.poll(); // 탈출
if(Q.size() ==1 ) answer = Q.poll(); // 마지막 것을 꺼내면 큐가 비게 됨
}
return answer;
}
public static void main(String[] args){
Main T = new Main();
Scanner kb = new Scanner(System.in);
int n=kb.nextInt();
int k=kb.nextInt();
System.out.println(T.solution(n, k));
}
}
'Coding Test Java' 카테고리의 다른 글
인프런 - 버블정렬 (0) | 2024.01.30 |
---|---|
인프런 - 선택정렬 (0) | 2024.01.30 |
인프런 - 쇠막대기 (0) | 2024.01.29 |
인프런 - 후위 연산자(postpix) (0) | 2024.01.29 |
인프런 - 크레인 인형 뽑기 (카카오) (0) | 2024.01.29 |