File tree Expand file tree Collapse file tree 5 files changed +77
-0
lines changed Expand file tree Collapse file tree 5 files changed +77
-0
lines changed Original file line number Diff line number Diff line change 214
214
| 03 | | [ SWEA-1225 암호생성기] ( ./src/Queue/swea1225 ) | |
215
215
| 04 | | [ Baekjoon-1158 요세푸스 문제] ( ./src/Queue/P1158 ) | |
216
216
| 05 | | [ Programmers 다리를 지나는 트럭] ( ./src/Queue/prg42583 ) | |
217
+ | 06 | | [ Programmers 기능개발] ( ./src/Queue/prg42586 ) | |
218
+ | 07 | | [ Programmers 프린터] ( ./src/Queue/prg42587 ) | |
217
219
218
220
### Tree
219
221
Original file line number Diff line number Diff line change
1
+ ## [ programmers - 스택/큐] 기능개발
2
+
3
+ ![ image] ( https://user-images.githubusercontent.com/22045163/115884403-d66eea00-a489-11eb-871c-a9b61c08bb68.png )
Original file line number Diff line number Diff line change
1
+ package Queue .prg42586 ;
2
+
3
+ import java .util .*;
4
+
5
+ class Solution {
6
+ public int [] solution (int [] progresses , int [] speeds ) {
7
+
8
+ List <Integer > list = new ArrayList <>();
9
+ int [] time = new int [speeds .length ];
10
+
11
+ for (int i = 0 ; i < speeds .length ; i ++) {
12
+ time [i ] = (int ) Math .ceil ((double ) (100 - progresses [i ]) / speeds [i ]);
13
+ }
14
+
15
+ int cur = time [0 ], cnt = 1 ;
16
+ for (int i = 1 ; i < speeds .length ; i ++) {
17
+ if (cur < time [i ]) {
18
+ list .add (cnt );
19
+ cur = time [i ];
20
+ cnt = 1 ;
21
+ } else {
22
+ cnt ++;
23
+ }
24
+ }
25
+ list .add (cnt );
26
+
27
+ return listToArr (list );
28
+ }
29
+
30
+ private int [] listToArr (List <Integer > list ) {
31
+ int [] res = new int [list .size ()];
32
+ for (int i = 0 ; i < list .size (); i ++) {
33
+ res [i ] = list .get (i );
34
+ }
35
+ return res ;
36
+ }
37
+ }
Original file line number Diff line number Diff line change
1
+ ## [ programmers - 스택/큐] 프린터
2
+
3
+ ![ image] ( https://user-images.githubusercontent.com/22045163/115884265-ab849600-a489-11eb-8f79-de2b0df65c66.png )
Original file line number Diff line number Diff line change
1
+ package Queue .prg42587 ;
2
+
3
+ import java .util .*;
4
+
5
+ class Solution {
6
+ public int solution (int [] priorities , int location ) {
7
+
8
+ int N = priorities .length ;
9
+ LinkedList <Integer > q = new LinkedList <>();
10
+
11
+ for (int i = 0 ; i < N ; i ++) q .offer (i );
12
+
13
+ int cnt = 0 ;
14
+ while (!q .isEmpty ()) {
15
+ int J = q .removeFirst ();
16
+ boolean print = true ;
17
+ for (int i = 0 ; i < q .size (); i ++) {
18
+ if (priorities [J ] < priorities [q .get (i )]) {
19
+ q .addLast (J );
20
+ print = false ;
21
+ break ;
22
+ }
23
+ }
24
+ if (print ) {
25
+ cnt ++;
26
+ if (J == location ) return cnt ;
27
+ }
28
+ }
29
+
30
+ return N ;
31
+ }
32
+ }
You can’t perform that action at this time.
0 commit comments