๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๋ฐ˜์‘ํ˜•

์ „์ฒด ๊ธ€60

211007_TIL ์˜ค๋Š˜ ํ•œ ์ผ ์ด๋ ฅ์„œ, ํฌํŠธํด๋ฆฌ์˜ค ์ˆ˜์ • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ฌธ์ œํ’€๊ธฐ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์›”๊ฐ„ ์ฝ”๋“œ ์ฑŒ๋ฆฐ์ง€ ์ฐธ์—ฌ ํด๋ก ์ฝ”๋”ฉ ๊ฐ•์˜ ํ”„๋กœ์ ํŠธ ์ˆ˜์ • ๊ณ„ํš ์„ธ์šฐ๊ธฐ ์˜ค๋Š˜ ๋Š๋‚€ ์  ์ฐธ ๋ง‰๋ง‰ํ•˜๋‹ค๊ฐ€๋„ ํ•˜๋ฉด ๊ทธ๋ž˜๋„ ๋ญ๋ผ๋„ ๋˜๊ณ  ์žˆ์Œ์„ ๋Š๋‚€๋‹ค. ์ด์ œ๋Š” CS๊ฐ€ ์ฐธ ๋ง‰๋ง‰ํ•œ๋ฐ ์ด๊ฒƒ๋„ ์–ธ์  ๊ฐ„ ๋ญ๋ผ๋„ ๋˜๊ณ  ์žˆ์Œ์„ ๋Š๋‚„ ๋•Œ๊ฐ€ ์™”์œผ๋ฉด ์ข‹๊ฒ ๋‹ค. ์›”์ฝ”์ฑŒ ๋งจ๋‚  ์ฐธ์—ฌํ•ด์•ผ์ง€ ํ•ด์•ผ์ง€ ์ƒ๊ฐ๋งŒ ํ•˜๋‹ค๊ฐ€ ์˜ค๋Š˜ ์ฒ˜์Œ์œผ๋กœ ์ฐธ์—ฌํ–ˆ๋‹ค. 1๋ฒˆ์€ ๊ทธ๋ƒฅ ํ’€๋ผ๊ณ  ์ค€ ๋ฌธ์ œ์˜€๊ณ , 2๋ฒˆ๋„ ์‰ฝ๊ฒŒ ๋– ์˜ฌ๋ ธ๋Š”๋ฐ ์ž๋ฃŒํ˜•์„ ์‹ค์ˆ˜ํ•˜๋Š” ๋ฐ”๋žŒ์— ๊ดœํžˆ ํšจ์œจ์„ฑ์— ๋ฌด์Šจ ๋ฌธ์ œ๋ผ๋„ ์žˆ๋‚˜ ๊ณ ๋ฏผํ•˜๋Š๋ผ ์‹œ๊ฐ„์„ ๋‚ ๋ ธ๋‹ค. 3๋ฒˆ๋„ ์•„์ด๋””์–ด๋Š” ๋– ์˜ฌ๋ž๋Š”๋ฐ ์ €๋…์— ์ผ์ •์ด ์žˆ์–ด์„œ ๊ตฌํ˜„ํ•˜๊ณ  ์‹ค์ˆ˜ ์žก๊ณ  ํ•˜๋‹ค๋ณด๋ฉด ๋„ˆ๋ฌด ๋Šฆ์„ ๊ฒƒ ๊ฐ™์•„์„œ ์•„์‰ฝ์ง€๋งŒ ํฌ๊ธฐํ–ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ์กฐ๊ธˆ์”ฉ ๊ณ„์† ํ•˜๋‹ค๋ณด๋ฉด ์–ธ์  ๊ฐ„ ์Œ“์—ฌ์„œ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ค๋Š” ๋‚ ์ด ์˜ค๊ฒ ์ง€ ๋ฆฌ์•กํŠธ ํด๋ก ์ฝ”๋”ฉ.. 2021. 10. 7.
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์œ„ํด๋ฆฌ์ฑŒ๋ฆฐ์ง€ 9์ฃผ์ฐจ] ์ „๋ ฅ๋ง์„ ๋‘˜๋กœ ๋‚˜๋ˆ„๊ธฐ(C++) ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต ๊ธฐ์ดˆ๋ถ€ํ„ฐ ์ฐจ๊ทผ์ฐจ๊ทผ, ์ง์ ‘ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด ๋ณด์„ธ์š”. programmers.co.kr ์ฒ˜์Œ์—๋Š” ์ข€ ๋ง‰๋ง‰ํ–ˆ๋Š”๋ฐ ๊ธˆ๋ฐฉ ํ’€์ด๋ฅผ ๋– ์˜ฌ๋ฆด ์ˆ˜ ์žˆ์—ˆ๋‹ค. ๊ฐ„์„ ์˜ ๊ฐœ์ˆ˜๊ฐ€ ์ตœ๋Œ€ 100๊ฐœ๋ฐ–์— ๋˜์ง€ ์•Š์•„์„œ ๋ชจ๋“  ๊ฒฝ์šฐ๋ฅผ ๋‹ค ํƒ์ƒ‰ํ•ด๋ณด๊ณ  ๊ฐ€์žฅ ์ฐจ์ด๊ฐ€ ์ ๊ฒŒ ๋‚˜๋Š” ๊ฒฝ์šฐ๋ฅผ ์ฐพ์•„์ฃผ์—ˆ๋‹ค. ์ฒ˜์Œ์— ์ธ์ ‘ ๊ทธ๋ž˜ํ”„๋ฅผ ๋– ์˜ฌ๋ฆฌ๊ณ  ์ดˆ๊ธฐํ™”ํ•˜๋Š”๋ฐ ํฌ๊ธฐ๋ฅผ wires.size()๋กœ ์ž…๋ ฅํ•ด๋ฒ„๋ ค์„œ ์ž๊พธ Segmentation fault๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค. ์†ก์ „ํƒ‘์€ 1๋ฒˆ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋ฏ€๋กœ wires.size() ํฌ๊ธฐ๋กœ ๋ฒกํ„ฐ๋ฅผ ์„ ์–ธํ•˜๋Š”๊ฒฝ์šฐ n๋ฒˆ์งธ ์†ก์ „ํƒ‘์˜ ๊ทธ๋ž˜ํ”„๋ฅผ ์ €์žฅํ•  ๋•Œ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค. ์ธ์ ‘๊ทธ๋ž˜ํ”„๋ฅผ ๋งŒ๋“ค๊ณ  ๋‚œ ๋’ค์—๋Š” bfs๋กœ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ˆœํšŒ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค. ์ฐจ์ด๊ฐ€ ์Œ์ˆ˜์ผ ์ˆ˜ ์žˆ์œผ๋‹ˆ abs()๋ฅผ ์ด์šฉํ•ด ์ ˆ๋Œ“๊ฐ’์„ ์–ป์–ด์ฃผ์—ˆ๋‹ค. ๋งŒ์•ฝ ์†ก์ „ํƒ‘ ๊ฐœ์ˆ˜์˜ ์ฐจ์ด๊ฐ€ 0๋˜๋Š” 1์ด๋ฉด .. 2021. 10. 7.
211006_TIL ์˜ค๋Š˜ ํ•œ ์ผ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€๊ธฐ ํด๋ก ์ฝ”๋”ฉ ๊ฐ•์˜ ์˜ค๋Š˜ ๋Š๋‚€ ์  ์ฝ”๋”ฉ... ์žฌ๋ฐŒ๊ณ  ํž˜๋“ค๊ณ  ์žฌ๋ฐŒ์ง€๋งŒ ํž˜๋“ค๊ธฐ๋„ํ•˜๊ณ  ์žฌ๋ฐŒ๋Š”๊ฑฐ๊ฐ™๊ธฐ๋„ํ•˜๊ณ .... ๋‚ด์ผ ํ•  ์ผ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์›”๊ฐ„ ์ฝ”๋“œ ์ฑŒ๋ฆฐ์ง€ ํด๋ก ์ฝ”๋”ฉ ๊ฐ•์˜ ํ”„๋กœ์ ํŠธ ์ˆ˜์ • ๊ณ„ํš ์„ธ์šฐ๊ธฐ 2021. 10. 6.
React) useEffect์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž React๋ฅผ ๋‹ค์‹œ ๋ณต์Šต ์ค‘์— ํ•œ๋ฒˆ ์ •๋ฆฌ๊ฐ€ ํ•„์š”ํ•œ ๊ฒƒ ๊ฐ™์•„์„œ ๊ธ€์„ ์จ ๋ณด๋ ค ํ•œ๋‹ค. const App = () => { const [count, setCount] = useState(0); console.log("rendering"); const add = () => { console.log("add"); setCount(current => { return current+1 }); }; const minus = () => { console.log("minus"); setCount(current => { return current-1 }); }; useEffect(() => { console.log("component render"); return () => { console.log("component end.. 2021. 10. 6.
BOJ 12100) 2048(Easy) (C++) 12100๋ฒˆ: 2048 (Easy) ์ฒซ์งธ ์ค„์— ๋ณด๋“œ์˜ ํฌ๊ธฐ N (1 ≤ N ≤ 20)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์—๋Š” ๊ฒŒ์ž„ํŒ์˜ ์ดˆ๊ธฐ ์ƒํƒœ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. 0์€ ๋นˆ ์นธ์„ ๋‚˜ํƒ€๋‚ด๋ฉฐ, ์ด์™ธ์˜ ๊ฐ’์€ ๋ชจ๋‘ ๋ธ”๋ก์„ ๋‚˜ํƒ€๋‚ธ๋‹ค. ๋ธ”๋ก์— ์“ฐ์—ฌ ์žˆ๋Š” ์ˆ˜๋Š” 2 www.acmicpc.net Easy๋ผ๊ณ  ๋˜์–ด์žˆ๋Š”๋ฐ ํ—ค๋งธ๋‹ค. ๊ตฌํ˜„ ์ž์ฒด๋Š” ์–ด๋ ต์ง€ ์•Š์•˜๋Š”๋ฐ DFS์ฒ˜๋Ÿผ ๊ตฌํ˜„์„ ํ•ด๋ฒ„๋ฆฌ๊ณ  board๋Š” ์›์ƒ๋ณต๊ตฌ๋ฅผ ์•ˆ์‹œ์ผœ์ค˜์„œ ์ž๊พธ ์˜ค๋‹ต์ด ๋–ด๋‹ค. ๋งค ํšŒ ๋ณด๋“œ์˜ ํ˜•ํƒœ๋ฅผ ๊ธฐ์–ตํ•  ์ˆœ ์—†์œผ๋‹ˆ๊นŒ 5๋ฒˆ ๋Œ๋ฆฌ๊ณ  ๋‚˜๋ฉด ๋‹ค์‹œ ์•„์˜ˆ ์ฒ˜์Œ์œผ๋กœ ๋Œ์•„๊ฐ€์„œ ์‹œํ–‰ํ•ด์ค˜์•ผ ํ•œ๋‹ค. ํ๋ฅผ ์ด์šฉํ•ด์„œ ๊ฐ ๋ผ์ธ์„ ํ‘œํ˜„ํ–ˆ๋‹ค. ์•ž์— ์•„๋ฌด๊ฒƒ๋„ ์—†๋Š” ๊ฒฝ์šฐ(temp = 0)์—๋Š” ํ•ด๋‹น ๊ฐ’์„ ๊ธฐ์–ตํ•˜๊ณ  ํ์—์„œ ๋นผ๋‚ธ๋‹ค. ์•ž์— ๋ธ”๋Ÿญ์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์ž์‹ ๊ณผ ๊ฐ™์œผ๋ฉด ํ•ฉ์ณ์ง€๋ฉด์„œ board์— ๋ฎ์–ด์”Œ์›Œ์ง€๊ณ  .. 2021. 10. 5.
BOJ 18808) ์Šคํ‹ฐ์ปค ๋ถ™์ด๊ธฐ (C++) 18808๋ฒˆ: ์Šคํ‹ฐ์ปค ๋ถ™์ด๊ธฐ ํ˜œ์œค์ด๋Š” ์ตœ๊ทผ์— ๋‹ค์–‘ํ•œ ๋Œ€ํšŒ๋ฅผ ์ฐธ์—ฌํ•˜๋ฉด์„œ ๋…ธํŠธ๋ถ์— ๋ถ™์ผ ์ˆ˜ ์žˆ๋Š” ์Šคํ‹ฐ์ปค๋“ค์„ ๋งŽ์ด ๋ฐ›์•˜๋‹ค. ์Šคํ‹ฐ์ปค๋Š” ์•„๋ž˜์™€ ๊ฐ™์ด ์‚ฌ๊ฐ ๋ชจ๋ˆˆ์ข…์ด ์œ„์— ์ธ์‡„๋˜์–ด ์žˆ์œผ๋ฉฐ, ์Šคํ‹ฐ์ปค์˜ ๊ฐ ์นธ์€ ์ƒํ•˜์ขŒ์šฐ๋กœ ๋ชจ๋‘ ์—ฐ www.acmicpc.net ๊ตฌํ˜„ ๋ฌธ์ œ์ด๋‹ค. ์ฒ˜์Œ์—” ๋Œ๋ฆฌ๋Š”๊ฑธ ์ง์ ‘ ๊ตฌํ˜„ํ•˜์ง€ ์•Š๊ณ  ๋…ธํŠธ๋ถ์— ์Šคํ‹ฐ์ปค๋ฅผ ๋ถ™์—ฌ๋ณด๋Š” ๋‹จ๊ณ„์—์„œ i, j๋ฅผ ์กฐ์ ˆํ•ด์„œ ํ•ด๊ฒฐํ•˜๋ ค ํ•˜์˜€์œผ๋‚˜ ์ƒ๊ฐ๋ณด๋‹ค ์‹ ๊ฒฝ์“ธ ๋ถ€๋ถ„์ด ๋งŽ์•„์„œ ์Šคํ‹ฐ์ปค๋ฅผ ๋Œ๋ฆฌ๋Š”๊ฑธ๋กœ ๋ณ€๊ฒฝํ–ˆ๋‹ค. ์Šคํ‹ฐ์ปค๋ฅผ ๋Œ๋ฆฌ๋Š” ๋ถ€๋ถ„์—์„œ i, j๊ฐ€ ํ—ท๊ฐˆ๋ ค์„œ ๋˜ ํ•œ์ฐธ ํ—ค๋งธ๋‹ค. ๊ฐ ์Šคํ‹ฐ์ปค์— ๋Œ€ํ•ด ๋ถ™์ผ ์ˆ˜ ์žˆ๋Š”์ง€ ๊ฒ€ํ† ํ•œ๋‹ค(stick). ๋ถ™์ผ ์ˆ˜ ์žˆ๋Š” ๊ณต๊ฐ„์ด ์žˆ์œผ๋ฉด ๋ถ™์ด๊ณ  ๋‹ค์Œ ์Šคํ‹ฐ์ปค์˜ ๊ฒ€ํ† ๋กœ ๋„˜์–ด๊ฐ€๊ณ  ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ์Šคํ‹ฐ์ปค๋ฅผ ํšŒ์ „์‹œ์ผœ ๋‹ค์‹œ ์‹œ๋„ํ•œ๋‹ค. ์Šคํ‹ฐ์ปค๋ฅผ ํšŒ์ „์‹œํ‚ฌ ๋•Œ i, j๊ฐ€ ์–ด๋–ค์‹์œผ๋กœ ๋ฐ”๋€Œ์–ด.. 2021. 10. 4.
๋ฐ˜์‘ํ˜•