swift 알고리즘/큐, 덱

백준 11866번 요세푸스 문제 0

쥐수 2023. 6. 13. 18:35
728x90

정답 :

let input = readLine()!.split(separator: " ").map{Int($0)!}
let n = input[0]
let k = input[1]
var head = 0


var array = [Int](1...n)
var result : [Int] = []

for i in 0..<n {
    head = (head + k - 1) % array.count
    var num = array[head]
    array.remove(at: head)
    result.append(num)
}
print("<\(result.map { String($0) }.joined(separator: ", "))>")
더보기

TMI : queue로 풀기보단, index로 풀어도 되는 방법을 알았다! 

728x90