💬 문제
https://school.programmers.co.kr/learn/courses/30/lessons/42587
💬 Idea
1. 인쇄 대기목록의 가장 앞에 있는 문서(J)를 대기목록에서 꺼냅니다.
2. 나머지 인쇄 대기목록에서 J보다 중요도가 높은 문서가 한 개라도 존재하면 J를 대기목록의 가장 마지막에 넣습니다.
3. 그렇지 않으면 J를 인쇄합니다.
💬 풀이
import Foundation
func solution(_ priorities:[Int], _ location:Int)->Int{varpriorities= priorities.reversed().map({Int($0)})varprintQueue:[Int]=[]varidx=abs(location -(priorities.count -1))while !priorities.isEmpty {letp= priorities.popLast()!
if p < priorities.max()?? p {
idx = idx == priorities.count ?0: idx +1
priorities.insert(p, at:0)}else{
printQueue.append(p)if idx == priorities.count {break}}}return printQueue.count
}소요시간 : 30분
💬 문제https://school.programmers.co.kr/learn/courses/30/lessons/42587
💬 Idea💬 풀이소요시간: 30분