알고리즘 문제 풀이/프로그래머스
[Algorithm] 프로그래머스 - 리스트 자르기 (Kotlin)
참깨빵위에참깨빵_
2024. 3. 24. 19:44
728x90
반응형
n이 1~4인 경우를 when으로 구분해서 풀면 아래와 같다.
class Solution {
fun solution(n: Int, slicer: IntArray, num_list: IntArray): IntArray {
val a = slicer[0]
val b = slicer[1]
val c = slicer[2]
val answer: IntArray
when (n) {
1 -> {
answer = IntArray(b + 1)
for (i in 0..b) {
answer[i] = num_list[i]
}
}
2 -> {
answer = IntArray(num_list.size - a)
for (i in a until num_list.size) {
answer[i - a] = num_list[i]
}
}
3 -> {
answer = IntArray(b - a + 1)
for (i in a..b) {
answer[i - a] = num_list[i]
}
}
4 -> {
var count = (b - a + 1) / c
if ((b - a + 1) % c != 0) {
count++
}
answer = IntArray(count)
var index = 0
var i = a
while (i <= b) {
answer[index++] = num_list[i]
i += c
}
}
else -> {
answer = IntArray(0)
}
}
return answer
}
}
반응형