반응형
https://www.acmicpc.net/problem/1158
1158번: 요세푸스 문제
첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000)
www.acmicpc.net

import java.util.LinkedList
import java.util.Scanner
fun main() {
val sc = Scanner(System.`in`)
var list = LinkedList<Int>()
var N = sc.nextInt()
var K = sc.nextInt()
for (i in 1..N){
list.add(i)
}
print("<")
while (!list.isEmpty()){
for (i in 0 until K){
if (i == K-1) {
var a = list.remove()
if (list.size == 0){
print(a)
} else print("$a, ")
} else {
list.add(list.remove())
}
}
}
print(">")
}
반응형
'Algorithm > [알고리즘]BACKJOON - Java&Kotlin' 카테고리의 다른 글
백준 Kotlin 17298번 : 오큰수 (0) | 2022.05.13 |
---|---|
백준 Kotlin 4948번 : 베르트랑 공준 (0) | 2022.05.11 |
백준 Kotlin 1463번 : 1로 만들기 (0) | 2022.05.07 |
백준 Kotlin 9020번 : 골드바흐의 추측 (0) | 2022.04.27 |
백준 Kotlin 11729번 : 하노이 탑 이동 순서 (0) | 2022.04.21 |
반응형
https://www.acmicpc.net/problem/1158
1158번: 요세푸스 문제
첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000)
www.acmicpc.net

import java.util.LinkedList
import java.util.Scanner
fun main() {
val sc = Scanner(System.`in`)
var list = LinkedList<Int>()
var N = sc.nextInt()
var K = sc.nextInt()
for (i in 1..N){
list.add(i)
}
print("<")
while (!list.isEmpty()){
for (i in 0 until K){
if (i == K-1) {
var a = list.remove()
if (list.size == 0){
print(a)
} else print("$a, ")
} else {
list.add(list.remove())
}
}
}
print(">")
}
반응형
'Algorithm > [알고리즘]BACKJOON - Java&Kotlin' 카테고리의 다른 글
백준 Kotlin 17298번 : 오큰수 (0) | 2022.05.13 |
---|---|
백준 Kotlin 4948번 : 베르트랑 공준 (0) | 2022.05.11 |
백준 Kotlin 1463번 : 1로 만들기 (0) | 2022.05.07 |
백준 Kotlin 9020번 : 골드바흐의 추측 (0) | 2022.04.27 |
백준 Kotlin 11729번 : 하노이 탑 이동 순서 (0) | 2022.04.21 |