(C++) 프로그래머스 - 하샤드 수
- 문제 링크
- 해설
- 각 자릿수의 값을 알기 위해서는 숫자를 쪼개야 한다.
- 문제 접근 과정
- 문제에 주어진 조건을 파악한다.
- x의 자릿수의 합을 구한다.
- x의 자릿수가 모두 구해질 때 까지 결과를 도출하면 안된다.
- 원하는 결과를 파악한다.
- x의 자릿수 총합을 이용하여 하샤드 수인지 확인한다.
- x와 자릿수 총합을 나눈다.
- 풀이
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #include <string> #include <vector> using namespace std; bool solution(int x) { bool answer = true; int temp = x; int placeTotalValue = 0; // 각 자리수의 총 합 while(temp > 0){ int placeValue = temp % 10; placeTotalValue += placeValue; temp /= 10; } return answer = (x % placeTotalValue == 0) ? true : false; } |
댓글
댓글 쓰기