๐ง ์๊ณ ๋ฆฌ์ฆ31 [ํ๋ก๊ทธ๋๋จธ์ค] ๋ค์ ์๋ ํฐ ์ ์ฐพ๊ธฐ JS ์ฒซ ๋ฒ์งธ ํ์ด๋ ๋ทํฐ์๊ฐ ์๋ ๊ฒฝ์ฐ๋ง ํ๋ณํ์ฌ ์ด์ค ํฌ๋ฌธ์ผ๋ก ์ฒ๋ฆฌํ์ต๋๋ค 2๊ฐ ์ ๋ ์๊ฐ์ด๊ณผ๊ฐ ๋ฐ์ํ์ต๋๋ค ์๊ฐ ์ด๊ณผ๊ฐ ๋ฐ์ํด์ ์ด๋ป๊ฒ ํด์ผ ๋ฐ๋ณต์ ์ค์ผ ์ ์์๊น ๊ณ ๋ฏผํ์ต๋๋ค ์๊ฐ์ ํ๋ค๋ณด๋ ์คํ์ ํตํด ๋ทํฐ์๋ง ์ ์งํ๋ฉด ๋๊ฒ ๋ค๋ ํ๋จ์ด ๋ค์์ต๋๋ค. ๋ค์์๋ถํฐ ์ํ๋ฅผ ํ๋ฉด์ ๋ฐ๋ก ๋ค์ ์๋ ์์ ๊ทธ ์์ ๋ทํฐ์๋ค๋ง ์คํ์ผ๋ก ๊ด๋ฆฌํ๋ ๋ฐฉ์์ผ๋ก ํ์์ต๋๋ค function solution(numbers) { //๋ค์์๋ถํฐ ์ํํ๋ฉด์ //์คํ์๋ ๋ฐ๋ก ๋ค์ ์๋ ์์ ๊ทธ ์์ ๋ทํฐ์๋ค๋ง ๊ด๋ฆฌ const stack = []; const result = []; //๋ค์์๋ถํฐ ์ํ for (let i = numbers.length - 1; i >= 0; i--) { //์คํ์ด ๋น ๋๊น์ง ๋ฐ๋ณต while (stack.. 2024. 1. 7. [ํ๋ก๊ทธ๋๋จธ์ค] ๋ฌด์ธ๋ ์ฌํ JS ๋ฌธ์ ๋งํฌ ์ ํ์ ์ธ BFS๋ฌธ์ ๋ชจ๋ ์์๋ฅผ ์ํํ๋ฉด์ ์กด์ฌํ๋ ๋ชจ๋ ๋ฌด์ธ๋๋ฅผ ๋ฐฉ๋ฌธํ๊ณ ํ๋์ ๋ฌด์ธ๋๋ฅผ ๋ฐ๊ฒฌํ ๋๋ง๋ค bfs๋ฅผ ํตํด ํด๋น ๋ฌด์ธ๋๊ฐ ๊ฐ์ง๊ณ ์๋ ์๋์ ์๋ฅผ ๋ํด๋๊ฐ๋ ๋ฐฉ์์ผ๋ก ํ์์ต๋๋ค ๋ฐฉ๋ฌธํ ๋ฌด์ธ๋์ ์์๋ X๋ก ๋ณ๊ฒฝํ์ฌ ๋ฐฉ๋ฌธ์ฒ๋ฆฌ๋ฅผ ํด์คฌ์ต๋๋ค function solution(maps) { //bfs ์์ ํ์ const q = []; const result = []; const r_length = maps.length; const c_length = maps[0].length; const dr = [0, 0, -1, 1]; const dc = [1, -1, 0, 0]; //๋ฌธ์์ด์ ๋ฐฐ์ด๋ก ๋ณํ for (let r = 0; r < r_length; r++) { maps[r] = maps[r].. 2024. 1. 6. [ํ๋ก๊ทธ๋๋จธ์ค] ํธํ ๋์ค JS ๋ฌธ์ ๋งํฌ ๊ฐ์ธ์ ์ผ๋ก ํ๋ก๊ทธ๋๋จธ์ค์ ์๋ ๊ณผ์ ์งํํ๊ธฐ ๋ฌธ์ ๋ ๋น์ทํ๋ค๊ณ ๋๊ผ์ต๋๋ค ์คํฐ๋์ ๋ถ์ ํ์ด ๋ฐฉ๋ฒ์ด ์ธ์๊น์๋๋ฐ ๊ทธ ํ์ด๋ฅผ ์ด ๋ฌธ์ ์ ์ ์ฉํด๋ณด๋ ค๊ณ ํ์ด์ 1. ์์ฝ ์๊ฐ๋ค์ ๋ชจ๋ ๋ถ๋จ์๋ก ๋ณํ, ์์ ์๊ฐ ๊ธฐ์ค์ผ๋ก ์ค๋ฆ์ฐจ์ ์ ๋ ฌ์ ํ์ต๋๋ค. 2. ๋ฐฐ์ด๋ค์ ์ํํ๋ฉด์ 2-1. room_stack(์ฌ์ฉ ์ค์ธ ๋ฐฉ๋ค์ ์ข ๋ฃ์๊ฐ์ด ์ ์ฅ๋์ด ์๋ ๋ฐฐ์ด)์ ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌํฉ๋๋ค 2-2. ํ์ฌ ์์ฝ ์์ ์๊ฐ ๊ธฐ์ค์ผ๋ก ์ข ๋ฃ๋ ๋ฐฉ์ด ์์ผ๋ฉด, ์ข ๋ฃ๋ ๋ฐฉ์ popํฉ๋๋ค 2-3. ํ์ฌ ์์ฝ์ ์ข ๋ฃ์๊ฐ์ room_stack์ pushํฉ๋๋ค 2-4. room_cnt์ room_stack์ length๋ฅผ ๋น๊ตํด์ ํฐ ๊ฐ์ ์ ์ฅํฉ๋๋ค ์ฌ์ค room_stack์ ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌํ๋ ๊ฒ๋ณด๋ค ์ฐ์ ์์ํ๋ฅผ ์ฌ์ฉํ๋๊ฒ ์๊ฐ๋ณต์ก๋ ์ธก๋ฉด์.. 2024. 1. 5. [ํ๋ก๊ทธ๋๋จธ์ค]๋ฏธ๋ก ํ์ถ JS ๋ฌธ์ ๋งํฌ ์ ํ์ ์ธ ์ต๋จ๊ฑฐ๋ฆฌ ์ฐพ๋ bfs ๋ฌธ์ ์์ต๋๋ค ์ต๋จ ๊ฑฐ๋ฆฌ๋ฅผ 2๋ฒ ์ฐพ์์ผ ํด์ ํจ์๋ฅผ ๋ง๋ค์ด์ ํ์ฉํ์ต๋๋ค ํน์ ์ง์ ๊น์ง์ ์ต๋จ๊ฑฐ๋ฆฌ๋ฅผ ์ฐพ๋ ํจ์๋ฅผ ๋ง๋ค์ด์ 1. ์ ๊ตฌ์์ ๋ ๋ฒ๊น์ง ๋ฐฉ๋ฌธ ๊ฐ๋ฅ ์ฌ๋ถ๋ฅผ ํ์ธํ๊ณ 2. ๋ ๋ฒ์์ ์ถ๊ตฌ๊น์ง ๋ฐฉ๋ฌธ ๊ฐ๋ฅ ์ฌ๋ถ๋ฅผ ํ์ธํ์ต๋๋ค function solution(maps) { const r_length = maps.length; const c_length = maps[0].length; const dr=[0,0,-1,1]; const dc = [1,-1, 0,0]; let visited = Array.from(new Array(r_length), ()=> new Array(c_length).fill(false)); let q=[]; let start; let lever; .. 2024. 1. 4. [ํ๋ก๊ทธ๋๋จธ์ค] ํผ์์ ํ๋ ํฑํํ JS ๋ฌธ์ ๋งํฌ ํ์ด ๋ฐฉ๋ฒ ๋์ฌ ์ ์๋ ๊ฒฝ์ฐ๋ฅผ ๊ตฌํด 0์ ๋ฆฌํดํด์คฌ์ต๋๋ค 1. X๊ฐ O๋ณด๋ค ๋ง์ ๋ 2. O๊ฐ X๋ณด๋ค 2๊ฐ์ด์ ๋ง์ ๋ 3. ์ ๊ณต์ด ์ด๋ฏธ ์ด๊ฒผ๋๋ฐ ํ๊ณต์ด ์ด์ด์ ์งํํ ๊ฒฝ์ฐ 4. ํ๊ณต์ด ์ด๋ฏธ ์ด๊ฒผ๋๋ฐ ์ ๊ณต์ด ์ด์ด์ ์งํํ ๊ฒฝ์ฐ ์ด๊ธฐ๋ ๊ฒฝ์ฐ๋ฅผ ๋น๊ณ ๋ผ๊ณ ์ง์นญํ์ต๋๋ค ๊ฐ๋ก, ์ธ๋ก ๋น๊ณ ์ฌ๋ถ๋ฅผ ํ๋ณํ๋ ํจ์ ๋๊ฐ์ ๋น๊ณ ์ฌ๋ถ๋ฅผ ํ๋ณํ๋ ํจ์๋ฅผ ๋ง๋ค์ด์ ํ์ฉํ์ต๋๋ค function solution(board) { // ๋์ฌ ์ ์๋ ๊ฒฝ์ฐ ๊ตฌํ๊ธฐ //1. X๊ฐ O๋ณด๋ค ๋ง์ ๋ //2. O๊ฐ X๋ณด๋ค 2๊ฐ์ด์ ๋ง์ ๋ //3. ์ ๊ณต์ด ์ด๋ฏธ ์ด๊ฒผ๋๋ฐ ํ๊ณต์ด ์ด์ด์ ์งํํ ๊ฒฝ์ฐ //4. ํ๊ณต์ด ์ด๋ฏธ ์ด๊ฒผ๋๋ฐ ์ ๊ณต์ด ์ด์ด์ ์งํํ ๊ฒฝ์ฐ let o_cnt = 0; let x_cnt = 0; for (row of bo.. 2024. 1. 3. [ํ๋ก๊ทธ๋๋จธ์ค] ๋น๊ตฌ ์ฐ์ต JS ๋ฌธ์ ๋งํฌ ํ์ด ์ด ๋ฌธ์ ๋ ์๊ฐ๋ณด๋ค ์ค๋ ๊ฑธ๋ ธ์ต๋๋ค ์ฒ์์๋ (์์๊ณต๊ณผ ๋ฒฝ๋ฉด์ ๊ฑฐ๋ฆฌ + ๋ฒฝ๋ฉด๊ณผ ๋์ฐฉ๊ณต์ ๊ฑฐ๋ฆฌ)์ ์ ๊ณฑ์ ๊ตฌํ๋๋ฐ ๊ฐ ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ๋ ๊ณผ์ ์์ ์ค์๊ฐ ๋์์ ์ค์ฐจ๊ฐ ์๊ธฐ๋๋ผ๊ตฌ์ ๋ค๋ฅธ ๋ถ๋ค์ ํ์ด๋ฅผ ์ฐพ์๋ณด๋ ์ ์ ๋์นญ์์ผ์ ๊ตฌํ๋๊ฑฐ์์ต๋๋ค ๋์ฐฉ๊ณต์ ์ขํ๋ฅผ ์[0], ํ[1], ์ข[2], ์ฐ[3] ๋์นญ์ํด ๋์นญ์ํจ ๋์ฐฉ๊ณต์ ์ขํ์ ์์๊ณต ์ฌ์ด์ ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํจ ๋์ ์์๊ณต์ด ๋ฒฝ๋ณด๋ค ๋์ฐฉ๊ณต์ ๋จผ์ ๋ง๋๋ ์ํฉ์ด๋ฉด ๊ฑด๋๋ด๋ค ์๋ฅผ ๋ค์ด ๋์ฐฉ๊ณต์ ์์ชฝ์ผ๋ก ๋์นญ์ํฌ๊ฑด๋ฐ(์์๊ณต์ ์๋จ๋ฒฝ์ ๋ถ๋ชํ๊ฒ ๋ง๋ค๊ณ ) && ๋ ๊ณต์ด ๊ฐ์ ์ธ๋ก์ ์์ ์๊ณ && ์์๊ณต์ด ๋์ฐฉ๊ณต ์๋์ชฝ์ ์๋ค๋ฉด => ๋ฒฝ์ ๋ถ๋ชํ๊ธฐ ์ ์ ๋์ฐฉ๊ณต์ ๋ถ๋ชํ๋ฏ๋ก continue; ์ดํด๊ฐ ์๊ฐ์๋ ๋ถ๋ค์ ์๋ ๋งํฌ ์ฐธ๊ณ ํด์ฃผ์ธ์!! https://sil.. 2024. 1. 3. ์ด์ 1 2 3 4 5 6 ๋ค์