😎 κ³΅λΆ€ν•˜λŠ” μ§•μ§•μ•ŒνŒŒμΉ΄λŠ” μ²˜μŒμ΄μ§€?

[μ•Œκ³ λ¦¬μ¦˜ μœ„ν•œ ν•œλ°œμ§ λ‘λ°œμ§πŸΎ] μŠ¬λΌμ΄λ”© μœˆλ„μš° μ•Œκ³ λ¦¬μ¦˜ λ³Έλ¬Έ

πŸ‘©‍πŸ’» 컴퓨터 ꡬ쑰/Algorithm

[μ•Œκ³ λ¦¬μ¦˜ μœ„ν•œ ν•œλ°œμ§ λ‘λ°œμ§πŸΎ] μŠ¬λΌμ΄λ”© μœˆλ„μš° μ•Œκ³ λ¦¬μ¦˜

μ§•μ§•μ•ŒνŒŒμΉ΄ 2023. 6. 26. 13:21
728x90
λ°˜μ‘ν˜•

<λ³Έ λΈ”λ‘œκ·ΈλŠ” μ½”λ”©λ¬Έ codingmoon λ‹˜μ˜ 유튜브λ₯Ό μ°Έκ³ ν•΄μ„œ κ³΅λΆ€ν•˜λ©° μž‘μ„±ν•˜μ˜€μŠ΅λ‹ˆλ‹€ :-)>

=> 이 λ°©λ²•μœΌλ‘œ ν’€μ–΄λ³΄μ„Έμš” (μŠ¬λΌμ΄λ”© μœˆλ„μš° μ•Œκ³ λ¦¬μ¦˜)

 

🫧 μŠ¬λΌμ΄λ”© μœˆλ„μš° μ•Œκ³ λ¦¬μ¦˜

: λΆ€λΆ„ λ°°μ—΄μ˜ μ›μ†Œλ“€μ„ μ–΄λ– ν•œ 쑰건 ν•˜μ— 계산할 λ•Œ μ‚¬μš©

: ν•˜λ‚˜μ˜ νŠΉμ • λ²”μœ„λ₯Ό μ •ν•΄ 놓고, κ·Έ μœˆλ„μš°λ₯Ό μ΄λ™μ‹œν‚€λ©΄μ„œ λ²”μœ„ 내에 μžˆλŠ” μ›μ†Œλ“€μ„ κ³„μ‚°ν•΄μ€Œ

: μœˆλ„μš° λ²”μœ„ λ‚΄μ˜ λͺ¨λ“  μˆ«μžλ“€μ€ ν•©μ‚°ν•˜κ³ , λ²”μœ„ λ°–μœΌλ‘œ λ²—μ–΄λ‚œ μˆ«μžλ“€μ€ λΉΌμ€€λ‹€

 

🐾 μ‚¬μ΄μ¦ˆκ°€ k인, λΆ€λΆ„ λ°°μ—΄(subarrary) 의 μ΅œλŒ€ ν•© κ΅¬ν•˜κΈ°

function maxSumOfSubArrary(arr: number[], k:numnber) {
	let windowSum = 0;
    let maxSum = -Infinity;
    
    for (let i = 0; i < arr.length; i ++) {
    	windowSum += arr[i];
        if (i >= k - 1) {
        	maxSum = Math.max(windowSum, maxSum);
            windowSum -= arr[i = (k-1)];
        }
    }
    return maxSum;
}    

maxSumOfSubArrary([5, 7, -1, 14, 3, 12, 1, 4], 3)

 

 

728x90
λ°˜μ‘ν˜•
Comments