Search

๋ณ€์ง€ํ™˜

2.๋ฌธ์ œ์ด๋ฆ„
3. ์ˆ˜ํ–‰์‹œ๊ฐ„[์ดˆ(s)]
2880
์ข‹์•„์š” ๋ˆ„๋ฅด๊ธฐ
์ข‹์•„์š” ์ˆ˜
: 0
5 more properties
| ์ฝ”๋“œ ์ž‘์„ฑํ•˜๊ธฐ
import java.util.Collections; import java.util.PriorityQueue; public class Printer { public int solution(int[] priorities, int location) { int answer = 1; PriorityQueue<Integer> pq = new PriorityQueue<>(Collections.reverseOrder()); for (int i : priorities) { pq.add(i); } while (!pq.isEmpty()) { for (int i = 0; i < priorities.length; i++) { if (pq.peek() == priorities[i]) { if (location == i) { return answer; } pq.poll(); answer++; } } } return answer; } }
Java
๋ณต์‚ฌ
| ์ฝ”๋“œ ์„ค๋ช…ํ•˜๊ธฐ
1.
์šฐ์„ ์ˆœ์œ„ ํ๋ฅผ ํ™œ์šฉํ•ด์„œ priorities์— ์žˆ๋Š” ์ˆ˜๋ฅผ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•ด์„œ ํ์— ๋‹ด์Šต๋‹ˆ๋‹ค.
2.
for ๋ฐ˜๋ณต๋ฌธ์„ ํ†ตํ•ด์„œ priorities์— ์žˆ๋Š” ์ˆ˜์™€ que์— ์žˆ๋Š” ์ˆ˜๊ฐ€ ์ผ์น˜ํ•˜๋ฉด que์— ์žˆ๋˜ ์ˆ˜๋ฅผ ์‚ญ์ œํ–ˆ์Šต๋‹ˆ๋‹ค.
3.
๋˜ํ•œ priorities์˜ for๋ฌธ์€ ๊ณ„์†ํ•ด์„œ 0์œผ๋กœ ์ดˆ๊ธฐํ™”๋˜์–ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— while๋ฌธ์— ๋‹ด์•˜์Šต๋‹ˆ๋‹ค.
4.
์šฐ๋ฆฌ๊ฐ€ ์›ํ•˜๋Š” ๊ฒƒ์€ priorities์— ์žˆ๋Š” location๊ณผ ์ผ์น˜ํ•˜๋Š” ์ˆ˜์˜ ์šฐ์„ ์ˆœ์œ„ ์ž…๋‹ˆ๋‹ค. priorities์— ์žˆ๋Š” i์™€ location์ด ์ผ์น˜ํ•˜๋ฉด answer๋ฅผ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.
์šฐ๋ฆฌ๊ฐ€ ์›ํ•˜๋Š” ํ”„๋ฆฐํŠธ๋ฌผ์ด ๋ช‡ ๋ฒˆ์งธ๋กœ ์ถœ๋ ฅ๋˜๋Š”์ง€ ๊ถ๊ธˆํ•œ๊ฑด๋ฐ, answer๋ฅผ 0๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด์„œ ์—๋Ÿฌ๊ฐ€ ์ƒ๊ฒผ์Šต๋‹ˆ๋‹ค. location๊ณผ i๊ฐ€ ์ผ์น˜ํ•ด์•ผ๋งŒ answer๋ฅผ ์ถœ๋ ฅํ•ด์•ผํ•œ๋‹ค๋Š” ๋กœ์ง์„ ์ƒ๊ฐํ•˜์ง€ ๋ชปํ•ด์„œ ๊ฝค ์˜ค๋žœ์‹œ๊ฐ„์„ ํ—ˆ๋น„ํ–ˆ์Šต๋‹ˆ๋‹ค. ํ‘œ ๊ทธ๋ฆผ์„ ๊ทธ๋ ค๊ฐ€๋ฉด์„œ ๋กœ์ง์„ ๋‹ด์•˜๋”๋‹ˆ ๋งŽ์ด ๋„์›€์ด ๋๋˜ ๊ฑฐ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์˜ค๋Š˜ ํ’€์ดํ•œ ๋ฌธ์ œ๋Š” ๋จธ๋ฆฌ๊ฐ€ ๋„ˆ๋ฌด ์•„ํŒŒ์„œ ๋ธ”๋กœ๊ทธ์— ์ •๋ฆฌ๋ฅผ ํ•ด์•ผ๋  ๊ฑฐ ๊ฐ™์Šต๋‹ˆ๋‹ค^.^