https://school.programmers.co.kr/learn/courses/30/lessons/12947
더보기
/**
* 풀이
* 제안 받은 값의 모든 자릿수를 더한 값을 만든다.
* 제안 받은 값에 모든 자릿수를 더한 값을 나눈다.
* 나머지가 0이 된다면 true를 출력하고, 나머지가 0이 되지 않는다면 false를 반환한다.
*/
/**
* 수도코드
* 자릿수 더한 값;
* 자릿수 더하면서 변경될 값 = 입력받은 값;
* while(자릿수 더하면서 변경될 값 > 0) {
* 자릿수 더한 값 += 자릿수 더하면서 변경될 값 / 10 (여기서 가장 오른쪽의 값을 더하게 됨)
* 자릿수 더하면서 변경될 값 /= 10 (10을 나눔으로써, 가장 오른쪽에 있는 값이 소수로 변하게 되고, int의 부동소수점 성격에 따라 버려짐)
* }
*
* return ( 입력받은 값 % 자릿수 더한 값 == 0)
*
*/
class Solution {
public boolean solution(int x) {
int plusInt = 0;
int digitInt = x;
while(digitInt > 0){
plusInt += digitInt % 10;
digitInt /= 10;
}
return (x % plusInt == 0);
}
}
반응형
'스터디(programmers)' 카테고리의 다른 글
Java] 프로그래머스 lv.1, 2016년 (0) | 2023.02.01 |
---|---|
Kotlin] 프로그래머스 lv.1, 최소직사각형 (0) | 2023.01.27 |
Java] 프로그래머스 lv.1, 소수 찾기 (0) | 2023.01.11 |
Java] 프로그래머스 lv.1, 피자 나눠 먹기 (1) (0) | 2023.01.11 |
Kotlin] 프로그래머스 lv.1, 이상한 문자 만들기 (0) | 2023.01.04 |