#12954
๐ Question ?
https://school.programmers.co.kr/learn/courses/30/lessons/12954
class Solution {
fun solution(x: Int, n: Int): LongArray {
var answer = longArrayOf()
return answer
}
}
๐งฉ Thought Process
- for loop ์ ์ฌ์ฉํด์ n๋ฒ ๋ฆฌ์คํธ์ ์๋ ๋จผํธ๋ฅผ ์ถ๊ฐํ๋ค.
- x ๋ถํฐ ์์ํด์ x์ ๋ฐฐ์๊ฐ ๋๋ ์๋ค์ ๋ฆฌ์คํธ์ ์ถ๊ฐํ๋ค.
// ์ค๋ ๋ฐฐ์ด ๋ฌธ๋ฒ!
// ๊ทธ๋ฅ array๋ list๋ ์์ ์ด ๋ถ๊ฐํด์ mutableList๋ก ๋ณ๊ฒฝํด ์ฃผ์ด์ผ ํ๋ค.
val list: MutableList<Int> = answer.toMutableList()
list.add(element)
//๊ทธ๋ ๊ฒ ๋ฆฌ์คํธ๋ฅผ ์์ ํด ์ค ํ ๋ค์ array๋ก ๋๋ ค ๋์์ผ ๋๋น.
list.toTypedArray()
๐ Answer
class Solution {
fun solution(x: Int, n: Int): Array<Int> {
var answer = intArrayOf()
val list: MutableList<Int> = answer.toMutableList()
for (i in 1..n) {
list.add(x*i)
}
return list.toTypedArray()
}
}
ํ ์คํธ์ ํต๊ณผํด์ ์ ๋ต์ด ๋ง๋๋ค๊ณ ์๊ฐํ๋๋ฐ ๋ฌธ์ ๋ฅผ ์ ์ถํ๋๊น test 13๊ณผ test 14์ด ํ๋ ธ๋ค๊ณ ๋ด๋ค.
ํ ์คํธ 13๊ณผ 14์ด ์ด๋ค ํ ์คํธ์ธ์ง๋ฅผ ๋ชจ๋ฅด๋๊น ๋ง๋งํ๋ค. ๊ทธ๋์ ๋ฌธ์ ๋ฅผ ์ฐจ๊ทผํ ๋ค์ ์ฝ์ด๋ณด๋ function solution์ ์ถ๋ ฅ๊ฐ์ด LongArray์๋ค. ๊ทธ๋์ ์ ํ ์คํธ 13 ๊ณผ 14๋ ์์ฃผ ํฐ ์์ฌ์ Int๋ก๋ ํ ์คํธ๋ฅผ ํต๊ณผ๋ฅผ ๋ชปํ๊ฒ ๊ตฌ๋ ๋ผ๋ ์๊ฐ์ด ๋ค์๋ค.
๊ทธ๋์ ๋ชจ๋ Long์ผ๋ก ๋ฐ๊พธ์๋ค. Array<Int> ๋ถ๋ถ๋ Array<Long>์ผ๋ก ๋ฐ๊พธ์์ง๋ง ์ฌ์ ํ ์๋ฌ๊ฐ ๋ด๋ค.
list.toTypedArray๋ Array<Long> ํ์ ์ด๊ณ ๋๋ฒ์งธ ์ค์ ๋๋ LongArray๋ผ๊ณ ์ ์์๋ค.
๊ทธ๋์ ์์ ์๋ LongArray๋ฅผ Array<Long> ํ์ ์ผ๋ก ๋ฐ๊พธ์ด์ฃผ๋ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์๋ค.
class Solution {
fun solution(x: Int, n: Int): Array<Long> {
var answer = longArrayOf()
val list: MutableList<Long> = answer.toMutableList()
for (i in 1..n) {
list.add(x*i.toLong())
}
return list.toTypedArray()
}
}
๐ Result
๐ Comment
์๋นํ ์๊ฐ์ด ์ค๋ ๊ฑธ๋ ธ๋ค. ๋ฌธ์ ์์๋ ๋ถ๋ช ํ ๋ฆฌ์คํธ๋ฅผ ๋ฆฌํดํด์ผ ํ๋๋ฐ ์ด๊ธฐ์ ์ ํ ์๋ ์ฝ๋์๋ ๋กฑ์ด๋ ์ด๊ฐ ๋์์์ด์ ๋ญ์ง?? ์ถ์๋๋ฐ ๋ฌธ์ ์์ ํํธ๋ฅผ ์ค ๊ฒ ๊ฐ๋ค.
์ด๋ ์ด์ ์๋ ๋ฉํธ๋ฅผ ์ถ๊ฐ๋ก ํ ๋นํ๋ ๋ฐฉ๋ฒ์ด mutablelist๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ ๋ง๊ณ ๋ 3๊ฐ์ง ๋ฐฉ๋ฒ์ด ๋ ์์๋ค. ๋์ค์ ์๊ฐ์ด ๋๋ฉด ์ถ๊ฐ๋ก ๊ณต๋ถํด๋ณด๋ฉด ์ข๊ฒ ๋ค.
https://www.techiedelight.com/add-new-element-array-kotlin/