๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก๐Ÿ“š Language & CS knowledge/Algorithm (๊ธฐ์ดˆ๋ฌธ์ œํ’€์ด) (74)

Daehyunii's Dev-blog

๊ณ„๋‹จ์˜ค๋ฅด๊ธฐ(๋™์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ)

๋ฌธ์ œ(์ถœ์ฒ˜ : ์ธํ”„๋Ÿฐ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด ๊ฐ•์˜, ์ •๋ณด์˜ฌ๋ฆผํ”ผ์•„๋“œ) ์ฒ ์ˆ˜๋Š” ๊ณ„๋‹จ์„ ์˜ค๋ฅผ ๋•Œ ํ•œ ๋ฒˆ์— ํ•œ ๊ณ„๋‹จ ๋˜๋Š” ๋‘ ๊ณ„๋‹จ์”ฉ ์˜ฌ๋ผ๊ฐ„๋‹ค. ๋งŒ์•ฝ ์ด 4๊ณ„๋‹จ์„ ์˜ค๋ฅธ๋‹ค๋ฉด ๊ทธ ๋ฐฉ๋ฒ•์˜ ์ˆ˜๋Š” 1+1+1+1, 1+1+2, 1+2+1, 2+1+1, 2+2 ๋กœ 5๊ฐ€์ง€์ด๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ์ด N๊ณ„๋‹จ์ผ ๋•Œ ์ฒ ์ˆ˜๊ฐ€ ์˜ฌ๋ผ๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์˜ ์ˆ˜๋Š” ๋ช‡ ๊ฐ€์ง€์ธ๊ฐ€? โ–ฃ ์ž…๋ ฅ์„ค๋ช… ์ฒซ์งธ ์ค„์€ ๊ณ„๋‹จ์˜ ๊ฐœ์ˆ˜์ธ ์ž์—ฐ์ˆ˜ N(3≤N≤45)์ด ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. โ–ฃ ์ถœ๋ ฅ์„ค๋ช… ์ฒซ ๋ฒˆ์งธ ์ค„์— ์˜ฌ๋ผ๊ฐ€๋Š” ๋ฐฉ๋ฒ•์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค. โ–ฃ ์ž…๋ ฅ์˜ˆ์ œ 1 7 โ–ฃ ์ถœ๋ ฅ์˜ˆ์ œ 1 21 Tip ๋ฌธ์ œํ’€์ด //๊ฐ•์˜ ๋“ฃ๊ณ  ๋‚ด๊ฐ€ ๋‹ค์‹œ ์ž‘์„ฑํ•œ ๋‹ต function solution(num){ let answer; let dyTable = Array.from({length : num+1}, (..

์†ก์•„์ง€ ์ฐพ๊ธฐ(์ƒํƒœํŠธ๋ฆฌ๊ฒ€์ƒ‰ : BFS)

๋ฌธ์ œ(์ถœ์ฒ˜ : ์ธํ”„๋Ÿฐ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด ๊ฐ•์˜, ์ •๋ณด์˜ฌ๋ฆผํ”ผ์•„๋“œ) ํ˜„์ˆ˜๋Š” ์†ก์•„์ง€๋ฅผ ์žƒ์–ด๋ฒ„๋ ธ๋‹ค. ๋‹คํ–‰ํžˆ ์†ก์•„์ง€์—๋Š” ์œ„์น˜์ถ”์ ๊ธฐ๊ฐ€ ๋‹ฌ๋ ค ์žˆ๋‹ค. ํ˜„์ˆ˜์˜ ์œ„์น˜์™€ ์†ก์•„ ์ง€์˜ ์œ„์น˜๊ฐ€ ์ˆ˜์ง์„ ์ƒ์˜ ์ขŒํ‘œ ์ ์œผ๋กœ ์ฃผ์–ด์ง€๋ฉด ํ˜„์ˆ˜๋Š” ํ˜„์žฌ ์œ„์น˜์—์„œ ์†ก์•„์ง€์˜ ์œ„์น˜๊นŒ์ง€ ๋‹ค์Œ ๊ณผ ๊ฐ™์€ ๋ฐฉ๋ฒ•์œผ๋กœ ์ด๋™ํ•œ๋‹ค. ์†ก์•„์ง€๋Š” ์›€์ง์ด์ง€ ์•Š๊ณ  ์ œ์ž๋ฆฌ์— ์žˆ๋‹ค. ํ˜„์ˆ˜๋Š” ์Šค์นด์ด ์ฝฉ์ฝฉ์„ ํƒ€๊ณ  ๊ฐ€๋Š”๋ฐ ํ•œ ๋ฒˆ์˜ ์ ํ”„๋กœ ์•ž์œผ๋กœ 1, ๋’ค๋กœ 1, ์•ž์œผ๋กœ 5๋ฅผ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ตœ์†Œ ๋ช‡ ๋ฒˆ์˜ ์ ํ”„๋กœ ํ˜„์ˆ˜๊ฐ€ ์†ก์•„์ง€์˜ ์œ„์น˜๊นŒ์ง€ ๊ฐˆ ์ˆ˜ ์žˆ๋Š”์ง€ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑ ํ•˜์„ธ์š”. โ–ฃ ์ž…๋ ฅ์„ค๋ช… ์ฒซ ๋ฒˆ์งธ ์ค„์— ํ˜„์ˆ˜์˜ ์œ„์น˜ S์™€ ์†ก์•„์ง€์˜ ์œ„์น˜ E๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ง์„ ์˜ ์ขŒํ‘œ ์ ์€ 1๋ถ€ํ„ฐ 10,000 ๊นŒ์ง€์ด๋‹ค. โ–ฃ ์ถœ๋ ฅ์„ค๋ช… ์ ํ”„์˜ ์ตœ์†ŒํšŸ์ˆ˜๋ฅผ ๊ตฌํ•œ๋‹ค. ๋‹ต์€ 1์ด์ƒ์ž…๋‹ˆ๋‹ค. โ–ฃ ์ž…๋ ฅ์˜ˆ..