class Solution {
fun solution(num_list: IntArray): IntArray {
val lastIndex = num_list.size - 1
val lastValue = num_list[lastIndex]
val lastPreviousValue = num_list[lastIndex - 1]
var addValue = 0
addValue = if(lastValue > lastPreviousValue) {
lastValue - lastPreviousValue
}else {
lastValue * 2
}
return num_list + addValue
}
}
class Solution {
fun solution(num_list: IntArray): IntArray {
val answer = num_list.toMutableList().apply {
val (first, second) = num_list.takeLast(2)
if (first < second) add(second - first)
else add(second + second)
}
return answer.toIntArray()
}
}
구조 분해 선언
val pair = listOf(1, 2)
val (first, second) = pair
println(first) // 출력: 1
println(second) // 출력: 2
size
val arr = intArrayOf(1, 2, 3)
println(arr.size) // 출력: 3
toMutableList()
val arr = intArrayOf(1, 2, 3)
val mutableList = arr.toMutableList()
mutableList.add(4) // 이제 가능
println(mutableList) // 출력: [1, 2, 3, 4]
apply
val list = mutableListOf(1, 2).apply {
add(3) // `this`는 list를 가리킴
add(4)
}
println(list) // 출력: [1, 2, 3, 4]
takeLast()
val arr = listOf(1, 2, 3, 4)
println(arr.takeLast(2)) // 출력: [3, 4]
add()
val mutableList = mutableListOf(1, 2)
mutableList.add(3)
println(mutableList) // 출력: [1, 2, 3]
kotlin에서 제공하는 함수들을 적절히 사용해 가독성을 높이는 연습을 해야겠다.