νμ€λ μ
μμ μ μ xκ° νμ€λ μμ΄λ €λ©΄ xμ μλ¦Ώμμ ν©μΌλ‘ xκ° λλμ΄μ ΈμΌ ν©λλ€. μλ₯Ό λ€μ΄ 18μ μλ¦Ώμ ν©μ 1+8=9μ΄κ³ , 18μ 9λ‘ λλμ΄ λ¨μ΄μ§λ―λ‘ 18μ νμ€λ μμ λλ€. μμ°μ xλ₯Ό μ λ ₯λ°μ xκ° νμ€λ μμΈμ§ μλμ§ κ²μ¬νλ ν¨μ, solutionμ μμ±ν΄μ£ΌμΈμ.
μ ν 쑰건
* xλ 1 μ΄μ, 10000 μ΄νμΈ μ μμ λλ€.
μ μΆλ ₯ μ
μ
μΆλ ₯ μ #1
10μ λͺ¨λ μλ¦Ώμμ ν©μ 1μ
λλ€. 10μ 1λ‘ λλμ΄ λ¨μ΄μ§λ―λ‘ 10μ νμ€λ μμ
λλ€.
μ
μΆλ ₯ μ #2
12μ λͺ¨λ μλ¦Ώμμ ν©μ 3μ
λλ€. 12λ 3μΌλ‘ λλμ΄ λ¨μ΄μ§λ―λ‘ 12λ νμ€λ μμ
λλ€.
μ
μΆλ ₯ μ #3
11μ λͺ¨λ μλ¦Ώμμ ν©μ 2μ
λλ€. 11μ 2λ‘ λλμ΄ λ¨μ΄μ§μ§ μμΌλ―λ‘ 11λ νμ€λ μκ° μλλλ€.
μ
μΆλ ₯ μ #4
13μ λͺ¨λ μλ¦Ώμμ ν©μ 4μ
λλ€. 13μ 4λ‘ λλμ΄ λ¨μ΄μ§μ§ μμΌλ―λ‘ 13μ νμ€λ μκ° μλλλ€.
arr | return |
---|---|
10 | true |
12 | true |
11 | false |
13 | false |
λ¬Έμ νμ΄
do whileλ¬Έμ μ΄μ©ν νμ΄λ°©λ²μ΄λ€. sumμ xλ₯Ό 10μΌλ‘ λλ λλ¨Έμ§ κ°μ λν΄μ€ κ²μ΄λ©° xμλ xλ₯Ό 10μΌλ‘ λλ κ°μ λ°μ¬λ¦Ό κ°μ μ μ₯λλ€. xκ° 0λ³΄λ€ ν΄ λμ μ΄λ¬ν μ°μ°μ λ°λ³΅νλ€.
function solution(x) {
let num = x;
let sum = 0;
do {
sum += x%10;
x = Math.floor(x/10);
} while (x>0);
return !(num%sum);
}
λ€λ₯Έ νμ΄ λ°©μ
μΆμ² : νλ‘κ·Έλλ¨Έμ€ μ€μΏ¨
νμ΄ν ν¨μμ μ κ·ννμμ νμ©νμ¬ κ°λ¨ν νΈλ λ°©μλ μλ€.
// λ¬Έμ κ° κ°νΈλμμ΅λλ€. μ΄λ‘ μΈν΄ ν¨μ ꡬμ±μ΄λ ν
μ€νΈμΌμ΄μ€κ° λ³κ²½λμ΄, κ³Όκ±°μ μ½λλ λμνμ§ μμ μ μμ΅λλ€.
// μλ‘μ΄ ν¨μ ꡬμ±μ μ μ©νλ €λ©΄ [μ½λ μ΄κΈ°ν] λ²νΌμ λλ₯΄μΈμ. λ¨, [μ½λ μ΄κΈ°ν] λ²νΌμ λλ₯΄λ©΄ μμ± μ€μΈ μ½λλ μ¬λΌμ§λλ€.
function Harshad(n){
return !(n % (n + "").split("").reduce((a, b) => +b + +a ));
}
// μλλ ν
μ€νΈλ‘ μΆλ ₯ν΄ λ³΄κΈ° μν μ½λμ
λλ€.
console.log(Harshad(148))
'Algorithm' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Algorithm] νλ‘κ·Έλλ¨Έμ€ Lv.1 : 3μ§λ² λ€μ§κΈ° (2) | 2022.11.18 |
---|---|
[Algorithm] νλ‘κ·Έλλ¨Έμ€ Lv.1 : μ΄μν λ¬Έμ λ§λ€κΈ° (2) | 2022.11.17 |
[Algorithm] νλ‘κ·Έλλ¨Έμ€ Lv.1 : νλ ¬μ λ§μ (1) | 2022.11.16 |
[Algorithm] νλ‘κ·Έλλ¨Έμ€ Lv.1 : μ½λΌμΈ μΆμΈ‘ (3) | 2022.11.15 |
[Algorithm] νλ‘κ·Έλλ¨Έμ€ Lv.1 : μ§μ¬κ°ν λ³μ°κΈ° (2) | 2022.11.15 |
λκΈ