โ๏ธ ๋ฌธ์ ์ค๋ช
์์ ์ ์ x๊ฐ ํ์ค๋ ์์ด๋ ค๋ฉด x์ ์๋ฆฟ์์ ํฉ์ผ๋ก x๊ฐ ๋๋์ด์ ธ์ผ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด 18์ ์๋ฆฟ์ ํฉ์ 1+8=9์ด๊ณ , 18์ 9๋ก ๋๋์ด ๋จ์ด์ง๋ฏ๋ก 18์ ํ์ค๋ ์์ ๋๋ค. ์์ฐ์ x๋ฅผ ์ ๋ ฅ๋ฐ์ x๊ฐ ํ์ค๋ ์์ธ์ง ์๋์ง ๊ฒ์ฌํ๋ ํจ์, solution์ ์์ฑํด์ฃผ์ธ์.
https://school.programmers.co.kr/learn/courses/30/lessons/12947
ํ๋ก๊ทธ๋๋จธ์ค
SW๊ฐ๋ฐ์๋ฅผ ์ํ ํ๊ฐ, ๊ต์ก, ์ฑ์ฉ๊น์ง Total Solution์ ์ ๊ณตํ๋ ๊ฐ๋ฐ์ ์ฑ์ฅ์ ์ํ ๋ฒ ์ด์ค์บ ํ
programmers.co.kr
โ๏ธ ์๊ตฌ์ฌํญ
1. ์ ๋ ฅ๋ฐ์ x์ ์๋ฆฟ์์ ํฉ ๊ตฌํ๊ธฐ
2. x๋ฅผ 'x์ ์๋ฆฟ์์ ํฉ' ์ผ๋ก ๋๋๊ธฐ
3. ๋๋จธ์ง๊ฐ 0์ด๋ฉด(ํ์ค๋ ์) true, ์๋๋ฉด false ์ถ๋ ฅ
โ๏ธ ์์ฑ์ฝ๋
class Solution {
public boolean solution(int x) {
int sum = 0;
int n = x;
while(n > 0){
sum += n%10;
n /= 10;
}
boolean answer = true;
if (x % sum != 0) {
answer = false;
}
return answer;
}
}
โ๏ธ ์ฝ๋ ํ์ด
1. int sum = 0;
int n = x;
while(n > 0){
sum += n%10;
n /= 10;
}
ใ: ์ ๋ ฅ๋ฐ์ ์(x=n)๋ฅผ 10์ผ๋ก ๋๋๊ณ , ๋๋จธ์ง๋ฅผ ๋ํด์ฃผ๋ฉด์ ์๋ฆฟ์์ ํฉ์ ๊ตฌํ๋ค.
n>0๋ณด๋ค ์์์ง๋ฉด ์ข ๋ฃ๋๊ณ sum๋ง ์๋์์ ํ์ฉํ๋ค.
2. boolean answer = true;
if (x % sum != 0) {
answer = false;
}
ใ: ์ ๋ ฅ๋ฐ์ ์(x)๋ฅผ 1์์ ๊ตฌํ sum์ผ๋ก ๋๋๋ค.
answer์ true๋ก ์ด๊ธฐํํ๊ณ , ๋๋จธ์ง๊ฐ 0์ด ์๋๋ false๋ก ๋ณํํ๋ค.
'๋ด์ผ๋ฐฐ์์บ ํ > ์๊ณ ๋ฆฌ์ฆ ์ฝ๋์นดํ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค/JAVA] 23. ์ฝ๋ผ์ธ ์ถ์ธก (0) | 2025.03.21 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค/JAVA] 22. ๋ ์ ์ ์ฌ์ด์ ํฉ (1) | 2025.03.20 |
[ํ๋ก๊ทธ๋๋จธ์ค/JAVA] 20. ์ ์ ๋ด๋ฆผ์ฐจ์์ผ๋ก ๋ฐฐ์นํ๊ธฐ (1) | 2025.03.18 |
[ํ๋ก๊ทธ๋๋จธ์ค/JAVA] 19. ์ ์ ์ ๊ณฑ๊ทผ ํ๋ณ (1) | 2025.03.17 |
[ํ๋ก๊ทธ๋๋จธ์ค/JAVA] 18. ๋ฌธ์์ด์ ์ ์๋ก ๋ฐ๊พธ๊ธฐ (0) | 2025.03.16 |