< Queue 메서드 >
메서드 | 설명 |
boolean isEmpty() | Queue가 비어있는지 알려준다. |
Object peek() | Queue의 맨 앞에 저장된 객체를 반환한다.poll()과 달리 Queue에서 객체를 꺼내지는 않는다. |
Object poll() | Queue의 맨 앞에 저장된 객체를 꺼내서 반환한다. |
Object offer(Object item) | Queue에 객체(item)을 저장한다. |
int size() | Queue의 크기를 반환한다. |
boolean contains(Object item) | Queue에 객체(item)이 있는지 확인한다. 있으면 true, 없으면 false 를 반환한다. |
//K번째 수가 되기 전까지 맨 앞의 숫자를 poll()한 후 큐 맨 뒤에 새로 추가
for(int i=1;i<K;i++) {
q.offer(q.poll());
}
//K번째 수는 poll()하여 answer에 추가
answer+=q.poll();
import java.util.*;
public class No_11866 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N=sc.nextInt();
int K=sc.nextInt();
String answer="<";
Queue<Integer> q=new LinkedList<>();
for(int i=1;i<=N;i++) {
q.offer(i);
}
while(!q.isEmpty()) {
//K번째 수가 되기 전까지 맨 앞의 숫자를 poll()한 후 큐 맨 뒤에 새로 추가
for(int i=1;i<K;i++) {
q.offer(q.poll());
}
answer+=q.poll();
if(q.size()>0) {
answer+=", ";
}
}
answer+=">";
System.out.println(answer);
}
}
결과