https://school.programmers.co.kr/learn/courses/30/lessons/12931
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
풀이방법
1. 정수 n을 문자열로 바꿔준다. String(n)
2. map함수를 사용해 배열에 담아준다.
이때 클로져 안에 $0 매개변수는 Character형이기 때문에 String으로 한번 감싸주고 Int로 한번더 감싸줘야한다.
이때 Int로 감싸게되면 값이 있는지 없는지 모르기 때문에 옵셔널을 제거해줘야 되어 ! 를 붙여야함
3. Int형으로 만들어진 배열 nArray를 for 문을 이용하여 인덱스에 접근한뒤 값을 모두 result에 더해준다.
Map
컨테이너가 담고 있던 각각의 값을 매개변수를 통해 받은 함수에 적용한 후 새로운 컨테이너를 생성하여 반환해주는 함수
import Foundation
func solution(_ n:Int) -> Int
{
let nArray = String(n).map{Int(String($0))!}
var result = 0
for i in 0..<nArray.count{
result += nArray[i]
}
return result
}
'Swift랑 친해지기 > programmers 풀기' 카테고리의 다른 글
[프로그래머스] 최대공약수와 최소공배수 (0) | 2022.08.18 |
---|---|
[프로그래머스] 정수 제곱근 판별(Swift) (0) | 2022.08.17 |
[프로그래머스] 문자열 내 p와 y의 개수 (Swift) (0) | 2022.08.15 |
[프로그래머스] 문자열 다루기 기본 (Swift) (0) | 2022.08.08 |
[프로그래머스] 나누어 떨어지는 숫자 배열 (Swift) (0) | 2022.08.07 |