코딩연습
[백준] 로또 (6603)(Kotlin)
유줘니
2020. 2. 26. 14:21
원본 문제 : https://www.acmicpc.net/problem/6603
문제 참고 : https://zoonvivor.tistory.com/108
<첫번째>
import java.util.*
var n = 0
var arr: IntArray = intArrayOf()
var visited: BooleanArray = booleanArrayOf()
fun main() {
val sc: Scanner = Scanner(System.`in`)
while (true) {
n = sc.nextInt()
if (n == 0) break
arr = IntArray(n)
visited = BooleanArray(n)
for (i in 0 until n) {
arr[i] = sc.nextInt()
}
dfs(0, 0)
println()
}
}
fun dfs(start: Int, depth: Int) {
if (depth == 6)
printLotto()
for (i in start until n) {
visited[i] = true
dfs(i + 1, depth + 1)
visited[i] = false
}
}
fun printLotto() {
for (i in 0 until n) {
if (visited[i])
print("${arr[i]} ")
}
println()
}