요깨비's LAB

[백준, 자료구조, Kotlin] P.1158 요세푸스 문제 본문

알고리즘(Kotlin)/자료구조

[백준, 자료구조, Kotlin] P.1158 요세푸스 문제

요깨비 2021. 7. 8. 20:23

import java.util.*

fun main() {
    val scr = Scanner(System.`in`)

    val N = scr.nextInt()
    val K = scr.nextInt()

    val queue = LinkedList<Int>()

    for (i in 1..N) {
        queue.add(i)
    }

    var queueSize = queue.size
    var count = 1
    var result = "<"

    while (queueSize >= 0) {
        val element = queue.poll()

        if(count < K) {
            queue.add(element)
            count++
        }else {
            queueSize--
            result += element
            count = 1

            if(queueSize == 0)
                break
            result += ", "
        }
    }

    result += ">"

    print(result)
}
Comments