[programmers] 자릿수 더하기

delma·2020년 3월 17일
1

Algorithms

목록 보기
12/12

문제



풀이

문자열로 안바꿔주고 할 순 없을까 생각하다
10으로 나눈 나머지를 자릿값으로 생각해서 그걸 더해주는걸로..

func solution(_ n:Int) -> Int
{
        var answer:Int = 0
    var mok = n / 10
    
    var arr: [Int] = [(n%10)]
    
    while mok >= 10 {
        arr.append(mok % 10)
       mok = mok / 10
        
    }
    arr.append(mok)

    for item in arr {
        answer += item
    }
    return answer
}


근데 문자열로 바꾼다하면 다섯줄로 끝나는 것.........

func solution(_ n:Int) -> Int {
    var answer:Int = 0
    
    for item in String(n) {
        answer += Int(String(item))!
    }
    return answer
}
profile
🌐Code makes world better

1개의 댓글

comment-user-thumbnail
2020년 3월 17일

앗 자바에서는 String이 immutable이라 GC가 돌아서 가급적이면 숫자 나누기를 이용해서 풀어야 했었어요!
Swift는 안그런가요??

답글 달기