μ΅œλŒ€ 1 λΆ„ μ†Œμš”

πŸ“ [S5_1158] μš”μ„Έν‘ΈμŠ€ 문제

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.LinkedList;
import java.util.Queue;
import java.util.StringTokenizer;

public class Main {
    static StringTokenizer st;

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();


        st = new StringTokenizer(br.readLine(), " ");

        // μ‚¬λžŒμˆ˜
        int N = Integer.parseInt(st.nextToken());

        // μˆœμ„œ
        int K =Integer.parseInt(st.nextToken());

        Queue<Integer> queue = new LinkedList<Integer>();

        sb.append("<");
        // 큐에 μ‚½μž…
        for(int i=1; i<N+1; i++){
            queue.add(i);
        }

        while(!queue.isEmpty()){
            for(int i=0;i<K-1;i++) {
                queue.add(queue.poll());
            }
            if(queue.size()==1){
                sb.append(queue.poll()).append(">");
            }
            else {
                sb.append(queue.poll()).append(", ");
            }
        }
        System.out.println(sb);
    }
}

πŸ€” λ‚˜μ˜ 생각

이 λ¬Έμ œλŠ” 큐λ₯Ό μ‚¬μš©ν•˜λ©΄ κ°„λ‹¨ν•˜κ²Œ 풀릴 λ¬Έμ œμ΄λ‹€.
μ‚­μ œν•œ 순번이 μ•„λ‹ˆλ©΄ poll ν•˜κ³  λ‹€μ‹œ add ν•˜μ—¬ λ’€λ‘œ 보내고
μ‚­μ œν•  순번이면 poll ν•΄μ£Όλ©΄ λœλ‹€.
이것을 큐가 빌 λ•ŒκΉŒμ§€ μˆ˜ν–‰ !!