complete 11399.kt 16438.kt 25571.kt
This commit is contained in:
41
storage/zeta/kt/completed/16438.kt
Normal file
41
storage/zeta/kt/completed/16438.kt
Normal file
@@ -0,0 +1,41 @@
|
||||
fun cluster(schedule: Array<Array<Boolean>>, depth: Int, lo: Int, hi: Int) {
|
||||
if (hi - lo <= 1) {
|
||||
return
|
||||
}
|
||||
val mid = (lo + hi) / 2
|
||||
for (i in lo until mid) {
|
||||
schedule[depth][i] = false
|
||||
}
|
||||
for (i in mid until hi) {
|
||||
schedule[depth][i] = true
|
||||
}
|
||||
cluster(schedule, depth + 1, lo, mid)
|
||||
cluster(schedule, depth + 1, mid, hi)
|
||||
}
|
||||
|
||||
fun getWeeklySchedule(n: Int): Array<Array<Boolean>> {
|
||||
val schedule = Array(7, { i ->
|
||||
Array(n, { j ->
|
||||
if (j == 0) {
|
||||
true
|
||||
} else {
|
||||
false
|
||||
}
|
||||
})
|
||||
})
|
||||
cluster(schedule, 0, 0, n)
|
||||
return schedule
|
||||
}
|
||||
|
||||
fun main() {
|
||||
println(
|
||||
getWeeklySchedule(readln().toInt()).joinToString(separator = "\n") { i ->
|
||||
i.joinToString(separator = "") {
|
||||
if (it) {
|
||||
"B"
|
||||
} else {
|
||||
"A"
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
Reference in New Issue
Block a user