본문 바로가기

개발 노트/알고리즘[Kotlin]

프로그래머스 알고리즘 문제[x만큼 간격이 있는 n개의 숫자]

# 문제

함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요.

 

 

#제한조건

x는 -10000000 이상, 10000000 이하인 정수입니다.
n은 1000 이하인 자연수입니다.

 

 

# 입출력 예

ex) x = 2, n = 5, answer = [2,4,6,8,10]

ex) x = 4, n = 3, answer = [4,8,12]

ex) x = -4, n = 2, answer = [-4,-8]

 

 

#풀이

class Solution {
    fun solution(x: Int, n: Int): LongArray {
    
        var List = mutableListOf<Long>()
        
        for (i in 1..n){
            List.add(i.toLong() * x)
        }
        return List.toLongArray()
    }
}

 

List라는 변수에 배열리스트를 담아두고

i는 1부터 n까지 반복하면서, i*x한것을 List에 더한다 

 

 

예를들어서 설명하면 

x = 4, n=3 

 

 List = [ ]

 

그리고 i는 1부터 3까지 반복문을 돌면서

i=1  -> [1*4]

i=2 ->  [2*4]

i=3 ->  [3*4]

 

이값들을 각각 리스트에 추가해준다

List = [4,8,12]