큐를 사용해 문제를 해결했습니다
public class Q11866 { 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()); Queue<Integer> q = new LinkedList<Integer>(); for(int i=1; i<=n; i++) { q.add(i); } int loop =1; System.out.print("<"); while(!q.isEmpty()){ if(loop%k==0){ System.out.print(q.poll()); if(!q.isEmpty()) { System.out.print(", "); } } if(loop%k!=0){ q.offer(q.poll()); } loop++; } System.out.print(">"); } }
루프카운트를 늘리면서 k번째 왔을때는 큐에서 빼고,
k번째가 아닐 경우는 뺏다가 다시 뒤로 붙여주면 순서가 유지되면서
반복문을 돌릴 수 있습니당
'짱구 굴리기 (Q) - ' 카테고리의 다른 글
[백준 1193] 분수찾기 (0) | 2019.04.02 |
---|---|
[프로그래머스] 프린터 (0) | 2019.04.02 |
[백준 1065] 한수 (0) | 2019.01.29 |
[백준 1920] 수 찾기 (0) | 2019.01.25 |
[백준 1012] 유기농 배추 (0) | 2019.01.25 |