안녕하세요. 개발 중인 정주입니다.
오늘은 프로그래머스(Lv.1) - 하샤드 수 문제를 풀었습니다.
목차
Github
GitHub - jeongju9216/SwiftAlgorithm: 스위프트 알고리즘
스위프트 알고리즘. Contribute to jeongju9216/SwiftAlgorithm development by creating an account on GitHub.
github.com
문제 링크
https://programmers.co.kr/learn/courses/30/lessons/12947
코딩테스트 연습 - 하샤드 수
양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하
programmers.co.kr
풀이
s를 String으로 바꾼 뒤 reduce를 이용해 각 원소를 더해줍니다.
x가 합으로 나누어 떨어지는지를 return하면 됩니다.
전체 코드
func solution(_ x:Int) -> Bool {
let sum = String(x).reduce(0) {
$0 + Int(String($1))!
}
return x % sum == 0
}
아직은 초보 개발자입니다.
더 효율적인 코드 훈수 환영합니다!
공감과 댓글 부탁드립니다.
안녕하세요. 개발 중인 정주입니다.
오늘은 프로그래머스(Lv.1) - 하샤드 수 문제를 풀었습니다.
목차
Github
GitHub - jeongju9216/SwiftAlgorithm: 스위프트 알고리즘
스위프트 알고리즘. Contribute to jeongju9216/SwiftAlgorithm development by creating an account on GitHub.
github.com
문제 링크
https://programmers.co.kr/learn/courses/30/lessons/12947
코딩테스트 연습 - 하샤드 수
양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하
programmers.co.kr
풀이
s를 String으로 바꾼 뒤 reduce를 이용해 각 원소를 더해줍니다.
x가 합으로 나누어 떨어지는지를 return하면 됩니다.
전체 코드
func solution(_ x:Int) -> Bool {
let sum = String(x).reduce(0) {
$0 + Int(String($1))!
}
return x % sum == 0
}
아직은 초보 개발자입니다.
더 효율적인 코드 훈수 환영합니다!
공감과 댓글 부탁드립니다.