Q. λΆ„μˆ˜μ˜ λ§μ…ˆπŸ’‘


처음으둜 μ½”λ”©ν…ŒμŠ€νŠΈ 곡뢀λ₯Ό μ‹œμž‘ν–ˆλ‹€!
μ•žμœΌλ‘œ ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€μ˜ μ½”λ”©ν…ŒμŠ€νŠΈ μž…λ¬Έ 100λ¬Έμ œμ—μ„œ λ‚ μ§œλ³„ 문제λ₯Ό ν•˜λ‚˜μ”© ν’€μ–΄λ³΄κ³ μž ν•œλ‹€!
DAY1의 λ¬Έμ œλ“€μ€ λ„ˆλ¬΄..κ°„λ‹¨ν•œ 사칙연산 λ¬Έμ œμ˜€κΈ°μ— μ½”ν…Œλ„ˆλ¬΄μ‰½λ‹€~~ ν•˜κ³  λ„˜κΈ°λ‹€κ°€
μˆ˜ν¬μžμ—κ²Œ λ„ˆλ¬΄λ„ 큰 μ‹œλ ¨μ΄ λ‹€κ°€μ˜€κ³ λ§ˆλŠ”λ°.....


πŸ’›λ¬Έμ œμ„€λͺ…

첫 번째 λΆ„μˆ˜μ˜ λΆ„μžμ™€ λΆ„λͺ¨λ₯Ό λœ»ν•˜λŠ” denum1, num1, 두 번째 λΆ„μˆ˜μ˜ λΆ„μžμ™€ λΆ„λͺ¨λ₯Ό λœ»ν•˜λŠ” denum2, num2κ°€ λ§€κ°œλ³€μˆ˜λ‘œ μ£Όμ–΄μ§‘λ‹ˆλ‹€. 두 λΆ„μˆ˜λ₯Ό λ”ν•œ 값을 κΈ°μ•½ λΆ„μˆ˜λ‘œ λ‚˜νƒ€λƒˆμ„ λ•Œ λΆ„μžμ™€ λΆ„λͺ¨λ₯Ό μˆœμ„œλŒ€λ‘œ 담은 배열을 return ν•˜λ„λ‘ solution ν•¨μˆ˜λ₯Ό μ™„μ„±ν•΄λ³΄μ„Έμš”.


πŸ§‘μ œν•œμ‚¬ν•­

0 <denum1, num1, denum2, num2 < 1,000


πŸ§‘μž…μΆœλ ₯ 예 μ„€λͺ…

μž…μΆœλ ₯ 예 #1

1 / 2 + 3 / 4 = 5 / 4μž…λ‹ˆλ‹€. λ”°λΌμ„œ [5, 4]λ₯Ό return ν•©λ‹ˆλ‹€.

μž…μΆœλ ₯ 예 #2

9 / 2 + 1 / 3 = 29 / 6μž…λ‹ˆλ‹€. λ”°λΌμ„œ [29, 6]을 return ν•©λ‹ˆλ‹€.


πŸ’›λ¬Έμ œν’€μ΄(1μ°¨)

	function solution(denum1, num1, denum2, num2) {
    
     //λΆ„μž
    let denum = (denum1 * num2) + (denum2 * num1);
      
     //λΆ„λͺ¨
    let num = num1 * num2;
    
    let tmp = 1;
    
    for (let i = 1; i < denum; i++) {
        if(denum % i === 0 && num % i === 0){
            tmp = i
        } 
    }

    return [denum / tmp, num / tmp];
    
	}

처음 문제λ₯Ό λ§ˆμ£Όν•˜κ³  '두 λΆ„μˆ˜μ˜...ν•©....??을 μ–΄λ–»κ²Œ ν•˜λ”λΌ...?? κΈ°μ•½λΆ„μˆ˜κ°€...뭐지..?'
λΆ„λͺ… μ΄ˆλ“±ν•™κ΅λ•Œ 배운 μˆ˜ν•™μΈλ°.. λΆ„μˆ˜λ₯Ό λŒ€λ©΄ ν•  일이 μ—†λ‹€λ³΄λ‹ˆ κ°„λ‹¨ν•œ 식쑰차 μ„ΈμšΈ 수 μ—†μ—ˆλ‹€..πŸ˜₯

κ΅¬κΈ€λ‘œ '두 λΆ„μˆ˜μ˜ ν•©' λ”°μœ„λ₯Ό κ²€μƒ‰ν•˜λ©΄μ„œ μ‘°κΈˆμ”© μ‘°κΈˆμ”© ν’€μ–΄λ‚˜κ°€λ‹€ λ³΄λ‹ˆ
ν…ŒμŠ€νŠΈμΌ€μ΄μŠ€λ₯Ό ν’€μ–΄λ‚΄λŠ”λ°μ—λŠ” μ„±κ³΅μ„ν–ˆλ‹€!!

근데 막상 문제 μ œμΆœμ„ ν•˜λ‹ˆ λ‘κ°œμ˜ ν…ŒμŠ€νŠΈ λ¬Έμ œμ—μ„œ 자꾸만 μ‹€νŒ¨κ°€ λ‚˜λŠ”κ²ƒμ΄μ•„λ‹Œκ°€γ…...πŸ€”
아무리 봐도 λ‚΄ 식은 ν‹€λ¦°κ²ƒκ°™μ§€μ•Šμ•˜λŠ”λ°....

같은 문제λ₯Ό ꡬ글링을 해봐도 λ‚΄ λ‹΅κ³Ό 같은 λ‘œμ§μ„ μ§  μ‚¬λžŒλ“€λ„ 많이 λ³΄μ˜€μ—ˆλ‹€... λ‚˜λ§Œ μ™œ ν‹€λ¦¬λŠ”κ±°μ§€..??

πŸ’›λ¬Έμ œν’€μ΄(μ΅œμ’…)

	function solution(denum1, num1, denum2, num2) {
    
     //λΆ„μž
    let denum = (denum1 * num2) + (denum2 * num1);
      
     //λΆ„λͺ¨
    let num = num1 * num2;
    
    let tmp = 1;
    
    for (let i = 1; i <= denum; i++) {
        if(denum % i === 0 && num % i === 0){
            tmp = i
        } 
    }

    return [denum / tmp, num / tmp];
    
	}

μ•”λ§Œλ΄λ„ ν‹€λ¦°κ²Œ μ—†λŠ” λ‚΄ λ‹΅κ³Ό λ‹€λ₯Έ μ‚¬λžŒμ˜ 닡을 μˆ˜μ‹­λ²ˆ 비ꡐ후에 λ“œλ””μ–΄ 닡을 μ°Ύμ•„λƒˆλ‹€..!!
μ—¬λŸ¬λΆ„μ€ μœ„μ˜ 1μ°¨ λ¬Έμ œν’€μ΄κ°€ μ΅œμ’…ν’€μ΄μ™€ 뭐가 λ‹€λ₯Έμ§€ μ•Œκ² μŠ΅λ‹ˆκΉŒ..??...
.
.
.
정닡은...
for문의 쑰건식이
let i = 1; i < denum; i++ κ°€ μ•„λ‹Œ let i = 1; i <= denum; i++ μ΄μ˜€μŠ΅λ‹ˆλ‹€...!! 두λ‘₯......


λ§ˆμΉ˜λ©°πŸ™Œ

이 μ§€λ…ν•œ μ•Œκ³ λ¦¬μ¦˜... μ €λŸ° μ‚¬μ†Œν•œ 기호 ν•˜λ‚˜λ‘œ λ‚˜λ₯Ό κ΄΄λ‘­νžˆλ‹€λ‹ˆ...
λ‚˜λŠ” 아직도 μ™œ μ–˜λŠ” 틀리고 μŸ€λŠ” λ§žλŠ”μ§€ 사싀 잘 λͺ¨λ₯΄κ² λ‹€... κ·Έλƒ₯ κ·Έλ ‡λ‹€λ‹ˆκΉŒ κ·Έλ ‡κ΅¬λ‚˜... ν•˜κ³  λ„˜κΈ΄λ‹€ γ…œγ…œ
μˆ˜ν•™μ„ λͺ»ν•˜λ©΄ κ°œλ°œλ„ λͺ»ν•˜λŠ”κ±΄κ°€..μ–΅μšΈν•˜λ‹€...

profile
ν”„λ‘ νŠΈμ—”λ“œ 개발자 μ„±μž₯일기 πŸ’­

0개의 λŒ“κΈ€