File tree Expand file tree Collapse file tree 1 file changed +36
-0
lines changed Expand file tree Collapse file tree 1 file changed +36
-0
lines changed Original file line number Diff line number Diff line change
1
+ /*
2
+ 큐를 이용해 k번째가 오기전까진 큐에서 꺼내고 다시 삽입한다.
3
+ k번쨰를 만나게 되면 poll을 하고 응답값에 포함시킨다.
4
+ 위 작업을 큐가 빌때까지 반복한다.
5
+ */
6
+ import java .io .*;
7
+ import java .util .*;
8
+
9
+ class Main {
10
+ public static void main (String [] args ) throws Exception {
11
+ BufferedReader br = new BufferedReader (new InputStreamReader (System .in ));
12
+ BufferedWriter bw = new BufferedWriter (new OutputStreamWriter (System .out ));
13
+ StringTokenizer st = new StringTokenizer (br .readLine ());
14
+
15
+ Queue <Integer > que = new LinkedList <>();
16
+ int n = Integer .parseInt (st .nextToken ());
17
+ int k = Integer .parseInt (st .nextToken ());
18
+
19
+ for (int i = 1 ; i <= n ; i ++) {
20
+ que .add (i );
21
+ }
22
+ StringBuilder result = new StringBuilder ();
23
+ result .append ("<" );
24
+ while (que .size () > 1 ) {
25
+ for (int i = 0 ; i < k - 1 ; i ++) {
26
+ que .offer (que .poll ());
27
+ }
28
+ result .append (que .poll ()).append (", " );
29
+ }
30
+ result .append (que .poll ()).append (">" );
31
+
32
+ bw .write (result .toString ());
33
+ bw .flush ();
34
+ bw .close ();
35
+ }
36
+ }
You can’t perform that action at this time.
0 commit comments