[ 프로그래머스 ] 하샤드 수 (연습문제)
코드
#include <string>
#include <vector>
using namespace std;
bool solution(int x) {
bool answer = false;
vector<int> arr;
int pushNum,divisor=0,tmpNum = x;
//각 자릿수의 숫자들을 vector에 입력
while(true){
if(tmpNum/10==0){
pushNum = tmpNum;
arr.push_back(tmpNum);
break;
} else {
pushNum = tmpNum%10;
tmpNum = tmpNum/10;
arr.push_back(pushNum);
}
}
//자릿수 합 구하기
for(int i=0;i<arr.size();i++){
divisor += arr[i];
}
//하샤드 수인지 판별
if(x%divisor==0){
answer = true;
} else {
answer = false;
}
return answer;
}