적당한 고통은 희열이다

- 댄 브라운 '다빈치 코드' 중에서

Algorithm/Programmers

[Swift 알고리즘] Programmers x만큼 간격이 있는 n개의 숫자

hongssup_ 2022. 1. 8. 00:25
반응형

Level 1 연습문제

x만큼 간격이 있는 n개의 숫자

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

 

모범 답안

func solution(_ x:Int, _ n:Int) -> [Int64] {
    var result = [Int64]()
    for i in 1...n {
        result.append(Int64(i * x))
    }
    return result
}

내 코드

func solution(_ x:Int, _ n:Int) -> [Int64] {
    var arr = [Int64]()
    var num = x
    for _ in 0...(n-1) {
        arr.append(Int64(num))
        num += x
    }
    return arr
}

 

+ 코드가 이렇게나 간단해지다니.. 

얼른 map에 익숙해져야겠다..!

func solution(_ x:Int, _ n:Int) -> [Int64] {
    return Array(1...n).map { Int64($0 * x) }
}
func solution(_ x:Int, _ n:Int) -> [Int64] {
    return (1...n).map{Int64(x)*Int64($0)}
}
728x90
반응형