โ๏ธ ๋ฌธ์ ์ค๋ช
์ ์ n์ ์ ๋ ฅ๋ฐ์ n์ ์ฝ์๋ฅผ ๋ชจ๋ ๋ํ ๊ฐ์ ๋ฆฌํดํ๋ ํจ์, solution์ ์์ฑํด์ฃผ์ธ์.
https://school.programmers.co.kr/learn/courses/30/lessons/12928
ํ๋ก๊ทธ๋๋จธ์ค
SW๊ฐ๋ฐ์๋ฅผ ์ํ ํ๊ฐ, ๊ต์ก, ์ฑ์ฉ๊น์ง Total Solution์ ์ ๊ณตํ๋ ๊ฐ๋ฐ์ ์ฑ์ฅ์ ์ํ ๋ฒ ์ด์ค์บ ํ
programmers.co.kr
โ๏ธ ์๊ตฌ์ฌํญ
1. ๋ชจ๋ ์ฝ์ ๊ตฌํ๊ธฐ
2. ์ฝ์์ ํฉ ๊ตฌํ๊ธฐ
โ๏ธ ์์ฑ์ฝ๋
class Solution {
public int solution(int n) {
int total = 0 ;
for (int i=1; i<=n; i++) {
if ((n%i) == 0) {
total += i;
}
}
return total;
}
}
โ๏ธ ์ฝ๋ ํ์ด
1.
ใ: i๊ฐ ์ ๋ ฅ๋ฐ์ ๊ฐ n์ด ๋ ๋๊น์ง ๋ฐ๋ณต๋ฌธ์ ์คํ,
ใ ์ด๋ n์ i๋ก ๋๋ ๋๋จธ์ง๊ฐ 0์ผ๋ ( = i๊ฐ ์ฝ์์ผ ๋)์ ๊ฒฝ์ฐ๋ง total์ ๋ํด์ฃผ๊ธฐ
โ๏ธ ๋ฒ์ธ
์ฝ์์ ํน์ง์ ํ์ฉํ์ฌ for๋ฌธ ์คํ ํ์ ์ค์ด๊ธฐ
class Solution {
public int solution(int n) {
int total = 0 ;
for (int i=1; i<=n/2; i++) { // ๋ฐ๋ณต์กฐ๊ฑด์ด n/2๋ก ์ค์ ํ์ฌ, ์ ๋ฐ์ผ๋ก ์ค์
if ((n%i) == 0) {
total += i;
}
}
return total + n ; // ์ ๋ฐ๊น์ง ๊ตฌํ ์ฝ์์ ํฉ์ ์๊ธฐ์์์ ๋ํจ
}
}
๋ชจ๋ ์ ์์ ์ต์๊ณต์ฝ์์ธ 1๋ก ๋๋ ๊ฐ์ด ์๊ธฐ์์ ์ด๋๊น n/2๊น์ง ๊ตฌํ ํฉ์ ์๊ธฐ ์์ ์ ๋ํจ
12์ ์ฝ์์ ํฉ์ ๊ตฌํ๋ค๋ฉด
1 + 2 + 3+ 4 + 6 ๊น์ง์ ํฉ์ ๋ฐ๋ณต๋ฌธ์ผ๋ก ๊ตฌํ ํ(for์์ ๋ง ๋์จ total)
1๋ก ๋๋ ์ฝ์ (์๊ธฐ์์ )์ ํ๋ฒ ๋ ๊ตฌํด์ฃผ๋ ๊ฒ์ด๋ค. total(1 + 2 + 3 + 4 + 6) + 12 = ๋ชจ๋ ์ฝ์์ ํฉ
๋ค๋ฅธ ์ฌ๋์ ํ์ด๋ฅผ ๋ณด๊ณ ๋ฐฐ์ ๋ค. ์ํ์ ํน์ง์ ์ด์ฉํด ์ฝ๋๋ฅผ ํจ์จ์ ์ผ๋ก ์ง๋๊ฒ...!! ๋๋จํ๋ค.
'๋ด์ผ๋ฐฐ์์บ ํ > ์๊ณ ๋ฆฌ์ฆ ์ฝ๋์นดํ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค/JAVA] 16. x๋งํผ ๊ฐ๊ฒฉ์ด ์๋ n๊ฐ์ ์ซ์ (0) | 2025.03.14 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค/JAVA] 15. ๋๋จธ์ง๊ฐ 1์ด ๋๋ ์ ์ฐพ๊ธฐ (0) | 2025.03.13 |
[ํ๋ก๊ทธ๋๋จธ์ค/JAVA] 13. ์๋ฆฟ์ ๋ํ๊ธฐ (1) | 2025.03.11 |
[ํ๋ก๊ทธ๋๋จธ์ค/JAVA] 12. ํ๊ท ๊ตฌํ๊ธฐ (0) | 2025.03.10 |
[ํ๋ก๊ทธ๋๋จธ์ค/JAVA] 11. ์ง์์ ํ์ (0) | 2025.03.09 |