https://programmers.co.kr/learn/courses/30/lessons/42587?language=swift
func solution(_ priorities:[Int], _ location:Int) -> Int {
var answer: Int = 0
var q: [(Int,Int)] = []
var pq = priorities.sorted(by: >)
for i in 0..<priorities.count {
q.append((i,priorities[i]))
}
while (!q.isEmpty) {
let i: Int = q.first!.0
let p: Int = q.first!.1
q.remove(at: 0)
if (p == pq.first) {
pq.remove(at: 0)
answer += 1
if (i == location) {
break
}
}
else {
q.append((i,p))
}
}
return answer
}
우선순위와 배열의 index를 함께 mapping 하려했다가 포기했는데 set이 있었군요ㅎㅎ!
별 차이는 없을 것 같은데 if( i == location) { break } 대신 return answer 는 어떨까요? 무슨 코멘트라도 해야할 것 같아서 ^^;