[백준] 카드1 (2161)(kotlin)
문제 설명
입력 및 출력
» 입력
첫째 줄에 정수 N(1≤N≤1,000)이 주어진다.
» 출력
첫째 줄에 버리는 카드들을 순서대로 출력한다. 제일 마지막에는 남게 되는 카드의 번호를 출력한다.
예제 입출력(테스트케이스)
입력 | 출력 |
---|---|
7 | 1 3 5 7 4 2 6 |
문제 풀이1
import java.util.LinkedList
fun main(args: Array<String>) = with(System.`in`.bufferedReader()) {
val queue = LinkedList<Int>()
val list = mutableListOf<Int>()
repeat(readLine().toInt()) {
queue.add(it + 1)
}
while (queue.size != 1) {
list.add(queue.pop())
queue.addLast(queue.pop())
}
list.add(queue.pop())
print(list.joinToString(" "))
}