181101_(木) - PassionOfStudy/Algorithm GitHub Wiki
Programmers_(Harshad Number)
Judge the Harshad Number
하샤드 수My Solution
입력 받은 수 Int형 x를 String으로 형변환 후 Character형 배열로 나눈 후, 다시 각각의 Character형 배열의 요소를
String 으로 변환하고 String배열을 Int형 배열로 바꾸어 각각의 요소를 합하여 자릿수의 합을 구했다.
x.map { Int(String($0))! }.reduce(0) { $0 + $1 }
하샤드 수는 자릿수의 합이 나누어 떨어져야하므로 삼항연산자를 이용하여 Bool값을 return 한다.
return x % x.map { Int(String($0))! }.reduce(0) { $0 + $1 } ? true : false
Other Solution
다른 솔루션의 기본 Logic은 모두 비슷했다. 자릿수의 합을 구하는 것이 관건인데 이는 저번 문제인 Add Digits 를 참고하면 된다.