Jieunnyμ λΈλ‘κ·Έ
[JS] νλ‘κ·Έλλ¨Έμ€ - Nκ°μ μ΅μ곡배μ λ³Έλ¬Έ
π λ¬Έμ
λ μμ μ΅μ곡배μ(Least Common Multiple)λ μ λ ₯λ λ μμ λ°°μ μ€ κ³΅ν΅μ΄ λλ κ°μ₯ μμ μ«μλ₯Ό μλ―Έν©λλ€. μλ₯Ό λ€μ΄ 2μ 7μ μ΅μ곡배μλ 14κ° λ©λλ€. μ μλ₯Ό νμ₯ν΄μ, nκ°μ μμ μ΅μ곡배μλ n κ°μ μλ€μ λ°°μ μ€ κ³΅ν΅μ΄ λλ κ°μ₯ μμ μ«μκ° λ©λλ€. nκ°μ μ«μλ₯Ό λ΄μ λ°°μ΄ arrμ΄ μ λ ₯λμμ λ μ΄ μλ€μ μ΅μ곡배μλ₯Ό λ°ννλ ν¨μ, solutionμ μμ±ν΄ μ£ΌμΈμ.μ ν μ¬ν
- arrμ κΈΈμ΄ 1μ΄μ, 15μ΄νμΈ λ°°μ΄μ λλ€.
- arrμ μμλ 100 μ΄νμΈ μμ°μμ λλ€.
π‘ μμ΄λμ΄
μ²μ νμ΄λ μ ν΄λ¦¬λ νΈμ λ²μ μ¬μ©νμ§ μμμ μ λ§μ λ§μ λ§ λΉν¨μ¨μ μΈ μ½λ..
λλ²μ§Έλ μ ν΄λ¦¬λ νΈμ λ²μ μ΄μ©ν΄μ μ΅λ곡μ½μλ₯Ό ꡬνκ³ , 'μ΅μ곡배μ = (a * b) / μ΅λ곡μ½μ' λΌλ μ μ μ΄μ©ν νμ΄
βοΈ νμ΄
1. whileμ μ°κ³ , κ·Έλλ§λ€ forλ¬Έμ λμμΌνλ νμ΄..
λΉμ°ν μ΅μ곡배μλ λ°°μ΄μμ κ°μ₯ ν° μμ λ°°μλΌκ³ μκ°νκ³ κ·Έ κ°μ *2, *3 ν΄μ£Όλ©΄μ λ°°μ΄ μμ μμλ€λ‘ λλ μ§λμ§ νμΈ
function solution(arr) {
var answer = 0;
let max = arr[arr.length-1];
let returnValue = dividedReturn(arr, max);
while(returnValue === false){
returnValue = dividedReturn(arr, max);
max = max * 2;
}
answer = max / 2;
return answer;
}
function dividedReturn(arr, max) {
arr.sort((a,b)=>a-b);
let divided = true;
for(let i=0; i<arr.length-1; i++){
if(max % arr[i] !== 0) {
divided = false;
break;
}
}
return divided;
}
2. μ ν΄λ¦¬λ νΈμ λ² νμ΄
function solution(arr) {
let answer = 1;
for(let i of arr){
answer = minMulti(answer, i);
}
return answer;
}
function minMulti(a, b){ // μ΅μ곡배μ ꡬνκΈ°
return (a*b) / gcd(a,b);
}
function gcd(a, b) { // μ΅λ곡μ½μ ꡬνκΈ°
const remainder = a % b;
if (remainder === 0) return b;
return gcd(b, remainder);
}
'Study > Coding Test' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[JS] νλ‘κ·Έλλ¨Έμ€ - λ©λ¦¬λ°κΈ° (0) | 2023.02.21 |
---|---|
[JS] νλ‘κ·Έλλ¨Έμ€ - μ νμ μκ°μ΄λ (0) | 2023.02.21 |
[JS] νλ‘κ·Έλλ¨Έμ€ - μμ λμ§ν (0) | 2023.02.17 |
[JS] νλ‘κ·Έλλ¨Έμ€ - ꡬλͺ λ³΄νΈ (0) | 2023.02.17 |
[JS] νλ‘κ·Έλλ¨Έμ€ - μΉ΄ν« (0) | 2023.02.14 |