
Skill : Queue를 활용해서 문제 풀기
문제이해: 맨 앞 숫제 삭제 후 출력 -> 다음 숫제는 삭제 후 다시 삽입(무한 반복)
->while을 통해 Queue가 isEmpty가 아닐 때까지 무한 반복 시키기
//StringBuilder
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
long n = Integer.parseInt(br.readLine());
StringBuilder sb = new StringBuilder();
Queue <Integer> queue = new LinkedList<>();
for(int i = 1; i<=n; i++){
queue.add(i);
}
while(!queue.isEmpty()){
sb.append(queue.remove()+" ");
if(!queue.isEmpty()) {
queue.add(queue.remove());
}
}
System.out.println(sb);
}
}
//BufferedWriter
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer st;
long n = Integer.parseInt(br.readLine());
Queue <Integer> queue = new LinkedList<>();
for(int i = 1; i<=n; i++){
queue.add(i);
}
while(!queue.isEmpty()){
bw.write(queue.remove()+" ");
if(!queue.isEmpty()) {
queue.add(queue.remove());
}
}
bw.flush();
bw.close();
}
}