๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐“’๐“ช๐“ฝ๐“ฎ๐“ฐ๐“ธ๐“ป๐”‚26

[TIL] 230818 - ์•„์ด๋””์—์ด์…˜, ํƒ€๊ฒŸ์ธต ์กฐ์‚ฌ, ์ฐฝ์—… ๊ณต๋ชจ์ „ ์ˆ˜์ƒ์ž‘ ์•Œ์•„๋ณด๊ธฐ, ๋””์ž์ธ ๊ณต๋ถ€๋Š” ์–ผ๋งˆ๋‚˜ ํ•ด์•ผํ• ๊นŒ? ๐Ÿค˜์˜ค๋Š˜ ๊ณต๋ถ€ํ•œ ๋‚ด์šฉ ํƒ€๊ฒŸ์ธต ์กฐ์‚ฌ ์ˆ˜์ƒ์ž‘๋“ค์„ ๋ณด๋‹ˆ๊น ํƒ€๊ฒŸ์ธต์— ๋Œ€ํ•œ ๋ฌธ์ œ ์ •์˜๊ฐ€ ๋šœ๋ ทํ–ˆ๋‹ค. ๊ทธ๋ž˜์„œ ํ˜„์žฌ ์ •ํ•ด๋†“์€ 'ํ•™์ƒ ์šด๋™ ์„ ์ˆ˜'๋ผ๋Š” ํƒ€๊ฒŸ์ธต๋“ค์€ ์–ด๋–ค ๋ถˆํŽธํ•œ ์ ์„ ๊ฐ–๊ณ  ์žˆ๋Š”์ง€ ์–ด๋–ค ๊ฒƒ์„ ํ•ด์ฃผ๋ฉด ์ƒํ™œํ•˜๋Š”๋ฐ ํŽธ๋ฆฌํ•ดํ•  ๊ฒƒ ๊ฐ™์€์ง€ ์ด ํƒ€๊ฒŸ์ธต์˜ ํŠน์ง•์€ ๋ฌด์—‡์ผ๊นŒ ํƒ€๊ฒŸ์ธต์˜ ํ˜„์žฌ ๊ทœ๋ชจ ๋ฐ ์•ž์œผ๋กœ์˜ ์„ฑ์žฅ ๊ทœ๋ชจ ์ด ํƒ€๊ฒŸ์ธต๋งŒ์˜ ์žฅ์ ์€ ๋ฌด์—‡์ด๋ฉฐ, ๋‹จ์  ๋˜ํ•œ ์–ด๋– ํ•œ ๊ฒƒ๋“ค์ด ์žˆ์„๊นŒ ์–ด๋–ป๊ฒŒ ํ•˜๋ฉด ํƒ€๊ฒŸ์ธต์˜ ์žฅ์ ์€ ๊ทน๋Œ€ํ™”์‹œํ‚ค๊ณ  ๋‹จ์ ์€ ์ถ•์†Œ์‹œํ‚ฌ ์ˆ˜ ์žˆ์„์ง€ ๋“ฑ๋“ฑ ์— ์ดˆ์ ์„ ์žก์•„์„œ ์กฐ์‚ฌ๋ฅผ ์ง„ํ–‰ํ•ด๋ณด๋ฉด ์ข‹์„ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค. ์ฐฝ์—… ๊ณต๋ชจ์ „ ์ˆ˜์ƒ์ž‘๋“ค์€ ์™œ ์ˆ˜์ƒ์„ ํ–ˆ์„๊นŒ? ๐Ÿ“Œ [์ œ7ํšŒ ๋ถ€์‚ฐ ์ฐฝ์—… ์•„์ด๋””์–ด ๊ฒฝ์ง„๋Œ€ํšŒ ๊ฒฐ์Šน์ „ ๋ฐ ์‹œ์ƒ์‹] ์žฅ๋ ค์ƒ ์ฒญ์ง„๊ณ„ํŒ€, ์œ ๋‚˜๋…ธํŒ€, ์œ ์— ์—์Šค์—์ด์น˜, ์˜ค์…˜์…€๋ฌธ ์šฐ์ˆ˜์ƒ ์…€ํ”„๋ ˆ์ €, ๋ชฝ์‰˜ํ†ตํ†ต, 365ํŒ€, ๋Œ€์ƒ ๋ฆฌ์„œ์น˜ํŒ€ ์ฃผ๋‹คํŒ€ (.. 2023. 8. 18.
Google Colab ํŒŒ์ผ Github๋กœ pushํ•˜๊ธฐ 1) ํŒŒ์ผ > Github์— ์‚ฌ๋ณธ ์ €์žฅ 2) Authorize googlecolab ํด๋ฆญ 3) ์ž๊ธฐ๊ฐ€ ์—…๋กœ๋“œํ•˜๊ณ  ์‹ถ์€ ์ €์žฅ์†Œ๋กœ ๋ณ€๊ฒฝ ํ›„ ํ™•์ธ ํด๋ฆญ! 4) ๊นƒํ—ˆ๋ธŒ์—์„œ ํ™•์ธํ•ด๋ณด๊ธฐ [์ฐธ๊ณ ] https://codehome.tistory.com/14 2023. 8. 18.
๋ฐฑ์ค€ 2293๋ฒˆ : ๋™์ „ 1 ๐Ÿ‘‰ ์ œ์ถœ ์ฝ”๋“œ import sys input = sys.stdin.readline n, k = map(int, input().split()) c = [int(input()) for i in range(n)] dp = [0 for i in range(k+1)] dp[0] = 1 for i in c: for j in range(i, k+1): if j-i >= 0: dp[j] += dp[j-i] print(dp[k]) ํ•ต์‹ฌ๋ฝ€์ธ๋œจ : * ๋™์  ๊ณ„ํš๋ฒ• (Dynamic Programming, DP) ๋ฌธ์ œ๋ฅผ ํ’€ ๋•Œ ๊ณ ๋ คํ•ด์•ผํ•  ๊ฒƒ๋“ค '์ „์ฒด ๋ฌธ์ œ'๋ฅผ '๋ถ€๋ถ„ ๋ฌธ์ œ'๋กœ ์ž˜ ๋‚˜๋ˆ ์„œ ๋ฌธ์ œ๋ฅผ ์ ‘๊ทผํ–ˆ๋Š”๊ฐ€? ์ „์ฒด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ๋ถ€๋ถ„ ๋ฌธ์ œ์˜ ์ ํ™”์‹์€ ๋ฌด์—‡์ธ๊ฐ€? ๋ถ€๋ถ„ ๋ฌธ์ œ๋“ค์„ ํ•ด๊ฒฐ ํ›„ ์–ป์€ ๊ฒฐ๊ณผ๊ฐ’๋“ค์„ ๋ฉ”๋ชจ์ด์ œ์ด์…˜ํ•˜์˜€๋Š”๊ฐ€? ๋ถ€๋ถ„.. 2023. 8. 17.
Chp 8 - ๋‹ค์ด๋‚˜๋ฏน ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ตœ์ ์˜ ํ•ด๋ฅผ ๊ตฌํ•˜๋ ค๊ณ  ํ•˜๋Š”๋ฐ.. ์‹œ๊ฐ„ ํ˜น์€ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์ด ์—„์ฒญ๋‚˜๊ฒŒ ํ•„์š”ํ•  ๊ฒฝ์šฐ ์ปดํ“จํ„ฐ๋กœ๋„ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š”๊ฒŒ ํž˜๋“ค ์ˆ˜ ์žˆ์Œ (because. ์ปดํ“จํ„ฐ์˜ ์—ฐ์‚ฐ ์†๋„์—๋Š” ํ•œ๊ณ„๊ฐ€ ์žˆ๊ณ , ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ์˜ ๊ฐœ์ˆ˜๋„ ํ•œ์ •์ ์ด๊ธฐ ๋•Œ๋ฌธ) ๐Ÿค”โœ๏ธ ๋”ฐ๋ผ์„œ ์šฐ๋ฆฌ๋Š” ์—ฐ์‚ฐ ์†๋„์™€ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ์ตœ๋Œ€ํ•œ์œผ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํšจ์œจ์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ž‘์„ฑํ•ด์•ผ ํ•œ๋‹ค ๋‹ค๋งŒ, ์–ด๋–ค ๋ฌธ์ œ๋Š” ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ์•ฝ๊ฐ„ ๋” ์‚ฌ์šฉํ•˜๋ฉด ์—ฐ์‚ฐ ์†๋„๋ฅผ ๋น„์•ฝ์ ์œผ๋กœ ์ฆ๊ฐ€์‹œํ‚ฌ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋Š”๋ฐ.. ๋Œ€ํ‘œ์ ์ธ ๋ฐฉ๋ฒ•์ด ๋ฐ”๋กœ ๋‹ค์ด๋‚˜๋ฏน ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ธฐ๋ฒ• (aka ๋™์  ๊ณ„ํš๋ฒ•) ๐Ÿ—‚๏ธ ๋ชฉ์ฐจ ๐Ÿ—‚๏ธ 1. DP์˜ ๊ธฐ๋ณธ์  ์•„์ด๋””์–ด ์†Œ๊ฐœ 2. DP์˜ ํƒ‘๋‹ค์šด๊ณผ ๋ณดํ…€์—… ์„ค๋ช… 3. ๋ฉ”๋ชจ์ด์ œ์ด์…˜ ๊ธฐ๋ฒ• ์†Œ๊ฐœ 2023. 8. 14.
Chp2 UX ๋ถ„์„์„ ํ•˜๊ณ  ์„œ๋น„์Šค ์ „๋žต์„ ์„ธ์šฐ๋‹ค ์ด์ œ ์š”์ฒญ์‚ฌํ•ญ ๋ฐ›์€ ๋Œ€๋กœ ๊ธฐํšํ•˜๋ฉด ๋˜๋‚˜์š”? NO NO NO! ์š”์ฒญ์‚ฌํ•ญ์„ ๋ฐ›์€ ์งํ›„ ๋ฐ”๋กœ ํ•  ๊ฒƒ์€~ 1. ์š”์ฒญ์‚ฌํ•ญ์— ์“ฐ์ธ ์–ดํœ˜๋“ค ์ •ํ™•ํžˆ ํŒŒ์•…ํ–ˆ๋Š”์ง€ ํ™•์ธ 2. ์ ˆ๋Œ€ UI ๋ถ€ํ„ฐ ๋– ์˜ฌ๋ฆฌ์ง€ ๋ง๊ธฐ (์™€์ด์–ดํ”„๋ ˆ์ž„ ์ƒ๊ฐ ๋…ธ๋…ธ) ์™œ๋ƒ๋ฉด ์šฐ๋ฆฌ๋Š” ์•„์ง '์„œ๋น„์Šค ๊ธฐํš'์€ ์‹œ์ž‘๋„ ์•ˆ ํ–ˆ๊ธฐ ๋•Œ๋ฌธ! ๊ทธ๋ ‡๋‹ค๋ฉด ์„œ๋น„์Šค ๊ธฐํš์˜ ๋ชฉํ‘œ๋Š” ๋ฌด์—‡์ผ๊นŒ? - ์ „์ฒด ํ”„๋กœ๋•ํŠธ๊ฐ€ ์ง€ํ–ฅํ•˜๋Š” ๋ฐฉํ–ฅ์„ ํŒŒ์•…ํ•˜๊ณ  - ์ฃผ์–ด์ง„ ๋ฏธ์…˜์„ ์™„๊ฒฐ์„ฑ ์žˆ๋Š” ์„œ๋น„์Šค๋กœ ๋งŒ๋“œ๋Š” ๊ฒƒ์ž„! ์ด๋•Œ, '์„œ๋น„์Šค์˜ ์™„๊ฒฐ์„ฑ'์€ ์„œ๋น„์Šค ๊ธฐํš์˜ 3์š”์†Œ์ธ 1. ์ž์‚ฌ์˜ IT๊ตฌ์กฐ์™€ ์—ญ๋Ÿ‰ 2. ๋น„์ฆˆ๋‹ˆ์Šค์  ์ดํ•ด 3. ์„œ๋น„์Šค ์ „๋žต (๊ณ ๊ฐ์˜ UX์— ๋Œ€ํ•œ ๋ถ„์„์„ ๋ฐ”ํƒ•์œผ๋กœ) ๋“ค์„ ๋ชจ๋‘ ํ•ด๊ฒฐํ•˜๋Š” ๊ณผ์ •์„ ์˜๋ฏธํ•˜๋Š” ๊ฒƒ์ž„ 2๋ณด ์ „์ง„์„ ์œ„ํ•œ 1๋ณด ๋ฉˆ์ถค.. ์—…๋ฌด์˜ ์†๋„๋„ ์ค‘์š”ํ•˜์ง€๋งŒ ๊ทธ ์†๋„ ๋•Œ๋ฌธ์— ๊ณ ๋ฏผ์˜ ์‹œ๊ฐ„์„ ๊ฑด๋„ˆ๋›ฐ์–ด์„œ๋Š”.. 2023. 8. 13.
๋ฐฑ์ค€ 11650๋ฒˆ : ์ขŒํ‘œ ์ •๋ ฌํ•˜๊ธฐ (python) ๋ฌธ์ œ๋ฅผ ํ†ตํ•ด์„œ ์•Œ ์ˆ˜ ์žˆ๋Š” ์  : 1. 2์ฐจ์› ํ‰๋ฉด ์œ„์˜ ์  N๊ฐœ → 2์ฐจ์› ๋ฐฐ์—ด์„ ์‚ฌ์šฉํ•ด๋ณผ๊นŒ? 2. ์ขŒํ‘œ๋ฅผ x์ขŒํ‘œ๊ฐ€ ์ฆ๊ฐ€ํ•˜๋Š” ์ˆœ์œผ๋กœ 3. x์ขŒํ‘œ๊ฐ€ ๊ฐ™์œผ๋ฉด, y์ขŒํ‘œ๊ฐ€ ์ฆ๊ฐ€ํ•˜๋Š” ์ˆœ์œผ๋กœ 4. ์ •๋ ฌ → sorted(), sort() ํ•จ์ˆ˜ ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ์Œ ํ•„์š”ํ•œ ์ž…๋ ฅ๊ฐ’ : 1. ์ฒซ์งธ ์ค„ : ์ ์˜ ๊ฐœ์ˆ˜ N 2. ๋‘˜์งธ ์ค„ ~ : i๋ฒˆ์ ์˜ ์œ„์น˜ xi์™€ yi (์œ„์น˜๊ฐ€ ๊ฐ™์€ ๋‘ ์ ์€ ์—†๋‹ค) → ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ ์ž…๋ ฅ ๊ฐ’์„ ๋ฐ›๋Š” ๊ฒƒ์ด๋ฏ€๋กœ ๋ฐ˜๋ณต๋ฌธ ๋Œ๋ ค์•ผ๋จ ํŒŒ์•… ๊ฐ€๋Šฅ ์ถœ๋ ฅ๊ฐ’ : 1. ์ฒซ์งธ ์ค„ ~ N๊ฐœ์˜ ์ค„์— ์ ์„ ์ •๋ ฌํ•œ ๊ฒฐ๊ณผ → (ํ•œ ์ค„๋กœ ๋ฐฐ์—ด์„ ๋ณด์—ฌ์ฃผ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๊ณ ) ๊ฐ i๋ฒˆ์งธ ๋ฐฐ์—ด์˜ ์š”์†Œ๋ฅผ ์ฐจ๋ก€๋Œ€๋กœ ์ถœ๋ ฅํ•ด์•ผํ•จ์„ ๋ณด๊ณ  ์ด ๋˜ํ•œ ๋ฐ˜๋ณต๋ฌธ์„ ๋Œ๋ ค์„œ ์ถœ๋ ฅ์„ ํ•ด์•ผํ•˜๋Š”๊ตฌ๋‚˜ ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ์Œ ๐Ÿ‘‰ ํŒŒ์•…ํ•œ ๊ฒƒ์„ ๋ฐ”ํƒ•์œผ๋กœ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด๋ณด์ž! STE.. 2023. 5. 19.