Swift 로 해결하기

Shawn·2021년 4월 8일
0

SwiftAlgo

목록 보기
2/12

N개의 자연수 중,

각 자리 숫자의 합이 가장 큰 수 출력


1. 문제

N 개의 자연수 중 각 자리 숫자의 합이 가장 큰 수를 출력하라...


2. 조건

자연수 N, 그리고 N개의 자연수가 주어진다.


3. 내 풀이

func solution(_ num : [Int]) -> Int {
    var cnt: Int = 0
    var max: Int = 0
    var ret: Int = 0
    for i in num {
        cnt = 0
        let str = String(i)
        for c in str {
            cnt += Int(String(c))!
        }
        if cnt > max { 
            max = cnt 
            ret = i
        } else if cnt == max { 
            ret = i > ret ? i : ret
        }
    }
    return ret
}

swift 의 for 문은 , C 언어의 for 문과 다르게
index 를 쓰지 않는다. ( swift 3 까지만 사용할 수 있었다.)
따라서 index 를 사용하지 않는 방법을 생각하는 것이 매우 중요하다.

profile
iOS 개발, Flutter 개발, Swift, Dart, 42 Seoul 3기

0개의 댓글