๐Ÿ’ป Programming

๐Ÿ’ป Programming/๊ธฐํƒ€

[ํด๋ฆฐ ์ฝ”๋“œ Clean Code] 1์žฅ ๊นจ๋—ํ•œ ์ฝ”๋“œ

Clean Code ํด๋ฆฐ ์ฝ”๋“œ ์• ์ž์ผ ์†Œํ”„ํŠธ์›จ์–ด ์žฅ์ธ ์ •์‹  - Robert C. Martin 0์žฅ ๋“ค์–ด๊ฐ€๋ฉด์„œ ๊นจ๋—ํ•œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋ฐฐ์šฐ๊ธฐ ์–ด๋ ต๋‹ค ๋‹จ์ˆœํžˆ ์›์น™๊ณผ ํŒจํ„ด์„ ์•ˆ๋‹ค๊ณ  ๊นจ๋—ํ•œ ์ฝ”๋“œ๊ฐ€ ๋‚˜์˜ค์ง€ ์•Š๋Š”๋‹ค. ์ž˜ ๊ทธ๋ฆฐ ๊ทธ๋ฆผ๊ณผ ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ทธ๋ฆผ์„ ๊ตฌ๋ถ„ํ•  ์ค„ ์•ˆ๋‹ค๊ณ  ํ•ด์„œ ๊ทธ๋ฆผ์„ ์ž˜ ๊ทธ๋ฆด ์ˆ˜ ์žˆ๋Š” ๊ฒŒ ์•„๋‹ˆ๋“ฏ์ด ์Šค์Šค๋กœ ์—ฐ์Šตํ•˜๊ณ  ์‹คํŒจ๋„ ํ•ด๋ณด๋ฉฐ ๊ณ ์ƒ์„ ํ•ด์•ผ ํ•œ๋‹ค. 1์žฅ ๊นจ๋—ํ•œ ์ฝ”๋“œ ์ฝ”๋“œ๊ฐ€ ์กด์žฌํ•˜๋ฆฌ๋ผ ์ฝ”๋“œ๋Š” ๋” ์ด์ƒ ๋ฌธ์ œ๊ฐ€ ์•„๋‹ˆ๊ณ , ๋ชจ๋ธ์ด๋‚˜ ์š”๊ตฌ์‚ฌํ•ญ์— ์ง‘์ค‘ํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š” ์‚ฌ๋žŒ๋„ ์žˆ์„ ๊ฒƒ์ด๋‹ค. ์ฝ”๋“œ๋ฅผ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•˜๋Š” ์‹œ๋Œ€๊ฐ€ ๋‹ค๊ฐ€์˜ค๋ฉด ํ”„๋กœ๊ทธ๋ž˜๋จธ๋Š” ํ•„์š”๊ฐ€ ์—†๊ฒŒ ๋  ๊ฒƒ์ด๋‹ค. ์ฑ—GPT? ์ฝ”๋“œ๊ฐ€ ์‚ฌ๋ผ์งˆ ๊ฐ€๋ง์€ ์ „ํ˜€ ์—†๋‹ค. ์™œ? ์ฝ”๋“œ๋Š” ์š”๊ตฌ์‚ฌํ•ญ์„ ์ƒ์„ธํžˆ ํ‘œํ˜„ํ•˜๋Š” ์ˆ˜๋‹จ์ด๊ธฐ ๋•Œ๋ฌธ ๊ธฐ๊ณ„๊ฐ€ ์‹คํ–‰ํ•  ์ •๋„๋กœ ์ƒ์„ธํ•˜๊ฒŒ ์š”๊ตฌ์‚ฌํ•ญ์„ ..

๐Ÿ’ป Programming/JS, TS

[JavaScript] ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ css ์Šคํƒ€์ผ ๋ณ€๊ฒฝํ•˜๊ธฐ

DOM ์š”์†Œ์˜ ์Šคํƒ€์ผ ๋ณ€๊ฒฝ 1) className Product Name 60/60 Submit input.warning { background-color: rgb(248, 191, 145); } #remaining-chars.warning { color:rgb(211, 109, 26); } const spanElement = document.getElementById('remaining-chars'); spanElement.className = 'warning'; element.className('some-class')๋กœ ํ•ด๋‹น ์š”์†Œ์— ํด๋ž˜์Šค๋ช…์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค. className์œผ๋กœ css ํด๋ž˜์Šค ์ถ”๊ฐ€ํ•  ๋•Œ์˜ ๋‹จ์  : ์ด๋ฏธ ํด๋ž˜์Šค๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์š”์†Œ์˜ ๊ฒฝ์šฐ, ํ•ด๋‹น ํด๋ž˜์Šค๊ฐ€ ์ƒˆ๋กœ์šด ํด๋ž˜์Šค๋กœ ๋ฎ์–ด์”Œ์–ด์ง„๋‹ค...

๐Ÿ’ป Programming/JS, TS

[JavaScript] ์ด๋ฒคํŠธ ๊ฐ์ฒด

Event ์œ ์ €๊ฐ€ ์‚ฌ์ดํŠธ์˜ ํŠน์ • ๋ถ€๋ถ„์— ์ž…๋ ฅ, ํด๋ฆญ, ์Šคํฌ๋กค ํ•˜๋Š” ๋“ฑ์˜ ํ–‰๋™์„ ์˜๋ฏธํ•œ๋‹ค. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ด๋ฒคํŠธ๋ฅผ ํƒ์ง€ํ•˜์—ฌ ํŠน์ • ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋„๋ก ํ•  ์ˆ˜ ์žˆ๋‹ค. ์›น์˜ ๊ฒฝ์šฐ ์ด๋ฒคํŠธ๋Š” ๋ธŒ๋ผ์šฐ์ € ์œˆ๋„์šฐ ๋‚ด์—์„œ ๋ฐœ์ƒ๋˜๋Š”๋ฐ, ๋‹ค์Œ์™€ ๊ฐ™์€ ๋‹ค์–‘ํ•œ ์ด๋ฒคํŠธ ํƒ€์ž…๋“ค์ด ์žˆ๋‹ค. ์œ ์ €๊ฐ€ ์–ด๋–ค ์š”์†Œ๋ฅผ ์„ ํƒํ•˜๊ฑฐ๋‚˜ ์–ด๋–ค ์š”์†Œ ์œ„์— ์ปค์„œ๋ฅผ ์˜ฌ๋ ค๋‘”๋‹ค(hover). ์œ ์ €๊ฐ€ ํ‚ค๋ณด๋“œ์—์„œ ํ‚ค๋ฅผ ์„ ํƒํ•œ๋‹ค. ์œ ์ €๊ฐ€ ๋ธŒ๋ผ์šฐ์ € ์ฐฝ์˜ ํฌ๊ธฐ๋ฅผ ์žฌ์กฐ์ •ํ•˜๊ฑฐ๋‚˜ ๋‹ซ๋Š”๋‹ค. ์›น ํŽ˜์ด์ง€๊ฐ€ ๋กœ๋”ฉ์„ ์™„๋ฃŒํ–ˆ๋‹ค. ์–‘์‹(form)์ด ์ œ์ถœ๋˜์—ˆ๋‹ค. ๋น„๋””์˜ค๊ฐ€ ์žฌ์ƒ๋˜๊ฑฐ๋‚˜, ๋ฉˆ์ถ”๊ฑฐ๋‚˜, ํ˜น์€ ๋๋‚ฌ๋‹ค. ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค. ์ด๋ฒคํŠธ๋ฆฌ์Šค๋„ˆ์˜ ์ฝœ๋ฐฑํ•จ์ˆ˜ let paragraphElement = document.body.firstElementChild; function changeParag..

๐Ÿ’ป Programming/JS, TS

[JavaScript] window&document ์ „์—ญ๊ฐ์ฒด์™€ DOM

์ „์—ญ window & document ๊ฐ์ฒด Built-in Variables & Functions ์ „์—ญ ๋ณ€์ˆ˜๋กœ ์ฝ”๋“œ ๋‚ด์—์„œ ํ•ญ์ƒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ณ€์ˆ˜ window ๊ฐ์ฒด ์ „์—ญ ๊ฐ์ฒด window ์ „์—ญ ๊ฐ์ฒด๋Š” ์›น ๋ธŒ๋ผ์šฐ์ € ํ™˜๊ฒฝ์—์„œ ์ „์—ญ์œผ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค. ๋ชจ๋“  ์ „์—ญ ๋ณ€์ˆ˜์™€ ํ•จ์ˆ˜๋Š” ์‹ค์ œ๋กœ ์ด window ๊ฐ์ฒด์˜ ํ”„๋กœํผํ‹ฐ๋กœ ์กด์žฌํ•œ๋‹ค. window ๊ฐ์ฒด์˜ ํ”„๋กœํผํ‹ฐ์™€ ๋ฉ”์„œ๋“œ. ํ•จ์ˆ˜ ๊ธฐํ˜ธ f๊ฐ€ ํ‘œ์‹œ๋œ ๊ฒƒ์ด ๋ฉ”์„œ๋“œ์ด๊ณ  ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒƒ์€ ํ”„๋กœํผํ‹ฐ์ด๋‹ค. window ๊ฐ์ฒด์— ๋‚ด์žฅ๋œ ํ”„๋กœํผํ‹ฐ์™€ ๋ฉ”์„œ๋“œ๋“ค์€ window. ์—†์ด๋„ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋‹ค. alert ๋ฉ”์„œ๋“œ์˜ ๊ฒฝ์šฐ window.alert()๋กœ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๊ทธ๋ƒฅ alert()์œผ๋กœ๋„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ง์ด๋‹ค. ์œˆ๋„์šฐ์™€ ๋ธŒ๋ผ์šฐ์ € ํƒญ ์œˆ๋„์šฐ๋Š” ์›น ๋ธŒ๋ผ์šฐ..

๐Ÿ’ป Programming/HTML, CSS

[CSS] ๋ณ€ํ™˜๊ณผ ์ „ํ™˜ (Transformations & Transitions)

1. ๋ณ€ํ™˜ Transformations ์š”์†Œ์˜ ๋ชจ์–‘์„ ์ด๋™ํ•˜๊ฑฐ๋‚˜ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ (ex. hover) ๋ณ€ํ™˜์€ transform ์†์„ฑ์„ ์‚ฌ์šฉํ•˜๋Š”๋ฐ ์ด ์†์„ฑ์€ ๋ณ€ํ™˜ํ•˜๋ ค๋Š” ์š”์†Œ์— ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, ๋ณ€ํ™˜์„ ๋ฐœ์ƒ์‹œํ‚ค๋Š” ์š”์†Œ์— ์ถ”๊ฐ€ํ•œ๋‹ค. ์•„๋ž˜ ์˜ˆ์‹œ๋ฅผ ํ†ตํ•ด ๋‹ค์‹œ ์‚ดํŽด๋ณด์ž. .card-container { background-color: rgb(255, 255, 255); width: 350px; margin: 50px auto; box-shadow: 3px 3px 10px rgb(201, 200, 200); } .card-container:hover { transform: scale(1.05); } ๋ณ€ํ™˜ํ•˜๋ ค๋Š” ์š”์†Œ๋Š” .card-container์ด์ง€๋งŒ ์—ฌ๊ธฐ์— transform ์†์„ฑ์„ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๊ณ , .card..

๐Ÿ’ป Programming/HTML, CSS

[CSS] html, :root, * ์„ ํƒ์ž

1. html ํ•˜๋Š” css ๊ทœ์น™์€ html์— ์ ์šฉ๋˜๊ณ  html ์•ˆ์— ํฌํ•จ๋œ ์š”์†Œ๋“ค์—๋„ ์ƒ์†๋œ๋‹ค. ์•„๋ž˜์˜ css ๋ณ€์ˆ˜ ์˜ˆ์ œ์—์„œ ์‚ฌ์šฉํ–ˆ๋˜ ๋…ผ๋ฆฌ html { --color-grey-100: rgb(236, 236, 236); --color-grey-400: rgb(134, 134, 134); --color-grey-600: rgb(58, 58, 58); --color-grey-900: rgb(41, 41, 41); --color-primary-300: rgb(167, 226, 255); --color-primary-700: rgb(0, 170, 255); --size-1: 18px; --size-5: 50px; background-color: var(--color-grey-100); } 2. :root ๊ฐ€์ƒ ..

๐Ÿ’ป Programming/HTML, CSS

[CSS] em, rem, %

1. ํฐํŠธ ํฌ๊ธฐ์—์„œ์˜ em, rem, % 1) px ์žฅ์ : Easy to understand & translateable ๋‹จ์ : Limited user focus & not scalable 2) em vs. rem (1) em (element) Size is relative to font-size ๋‹ค๋ฅธ ์š”์†Œ์˜ ํฐํŠธ ํฌ๊ธฐ์™€ ์—ฐ๊ด€๋œ ํฌ๊ธฐ - ํฐํŠธ ํฌ๊ธฐ๋Š” ๋ถ€๋ชจ ์š”์†Œ์˜ ํฌ๊ธฐ์— ๋‹ฌ๋ ค์žˆ๋‹ค. ๋‹จ์  %์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋ถ€๋ชจ ์š”์†Œ์—์„œ ์ƒ์†๋ฐ›๋Š” ํฌ๊ธฐ์— ๋”ฐ๋ผ ์‚ฌ์ด์ฆˆ๊ฐ€ ๋‹ฌ๋ผ์ง€๊ธฐ ๋•Œ๋ฌธ์— ๊ด€๋ฆฌ๊ฐ€ ์–ด๋ ต๋‹ค. (2) rem (root em) Size is relative to root element’s font size ํ˜„์žฌ ์š”์†Œ์˜ ํฐํŠธ ํฌ๊ธฐ์™€ ์ตœ์ƒ์œ„ ์š”์†Œ์˜ ํฐํŠธ ํฌ๊ธฐ์™€ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋‹ค. HTML์—์„œ ์ตœ์ƒ์œ„ ์š”์†Œ: ์ตœ์ƒ์œ„ ์š”์†Œ์— ํฐํŠธ ํฌ๊ธฐ..

๐Ÿ’ป Programming/๊ธฐํƒ€

VS Code ์ž‘์€ ๋”ฐ์˜ดํ‘œ, ํฐ ๋”ฐ์˜ดํ‘œ ์„ค์ •ํ•˜๊ธฐ

VS Code์—์„œ ์ฝ”๋“œ ์ž‘์„ฑํ•  ๋•Œ ๋‚˜๋Š” ์ฃผ๋กœ ํฐ ๋”ฐ์˜ดํ‘œ(Double quote)๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ์„ ํ˜ธํ•˜๋Š”๋ฐ, ์ž๊พธ ์ž๋™์œผ๋กœ ์ž‘์€ ๋”ฐ์˜ดํ‘œ(Single quote)๊ฐ€ ์‚ฌ์šฉ๋˜์–ด์„œ ์„ค์ •์„ ์ฐพ์•„๋ณด๋˜ ์ค‘์— ๋ฐœ๊ฒฌํ–ˆ๋‹ค. ๋‚˜์ค‘์— ํŒ€ ์ปจ๋ฒค์…˜์ด ์ž‘์€ ๋”ฐ์˜ดํ‘œ์ธ ๊ฒฝ์šฐ๋„ ์žˆ์„ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ์ƒํ™ฉ์— ๋งž๊ฒŒ ์„ค์ •์„ ๋ณ€๊ฒฝํ•  ๋•Œ ์œ ์šฉํ•  ๊ฒƒ ๊ฐ™์•„ ๋ธ”๋กœ๊ทธ์— ๋‚จ๊ธฐ๋Š” ๊ฒŒ ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค. ๋จผ์ € code - ๊ธฐ๋ณธ ์„ค์ • - Settings ๋˜๋Š” ๋‹จ์ถ•ํ‚ค Command + , ๋ฅผ ๋ˆŒ๋Ÿฌ์„œ Settings์— ๋“ค์–ด๊ฐ„๋‹ค. ์—ฌ๊ธฐ์„œ ๋‹ค์Œ ๋„ค ๊ฐ€์ง€๋ฅผ ์ƒํ™ฉ์— ๋งž๊ฒŒ ์„ค์ •ํ•ด์ค€๋‹ค. 1. ๊ธฐ๋ณธ ์„ค์ •์„ ํฐ ๋”ฐ์˜ดํ‘œ(Double quote)๋กœ ์„ค์ • ์‹œ JavaScript > Preferences: Quote Style โžก๏ธ double TypeScript > Pre..

๐Ÿ’ป Programming/๊ธฐํƒ€

ROM, RAM, SSD, HDD (feat. ํ”„๋กœ์ ํŠธ ํ—ค์ผ๋ฉ”๋ฆฌ)

์š”์ฆ˜ ํ”„๋กœ์ ํŠธ ํ—ค์ผ๋ฉ”๋ฆฌ๋ผ๋Š” ์ฑ…์„ ์žฌ๋ฐŒ๊ฒŒ ์ฝ๋Š” ์ค‘์ธ๋ฐ, ์ฃผ์ธ๊ณต์ด ์šฐ์ฃผ์„ ์—์„œ ํ„ฐ์น˜์Šคํฌ๋ฆฐ ์ปดํ“จํ„ฐ(์•„๋งˆ ํƒœ๋ธ”๋ฆฟPC๊ฐ€ ์•„๋‹๊นŒ ํ•œ๋‹ค.)๋ฅผ ๋ฐœ๊ฒฌํ•˜๋Š” ์žฅ๋ฉด์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‚ด์šฉ์ด ๋‚˜์˜จ๋‹ค. "'์˜ํšŒ ๋„์„œ๊ด€'์ด๋ผ๋Š” ์ด๋ฆ„์ด ๋ถ™์€ ํด๋”๊ฐ€ ํ•˜๋‚˜ ์žˆ๋Š”๋ฐ, ๊ฑฐ๊ธฐ์—๋Š” ๋ฏธ๊ตญ์—์„œ ์ €์ž‘๊ถŒ์„ ์ธ์ •๋ฐ›์€ ๋ชจ๋“  ์ „์ž ์นดํƒˆ๋กœ๊ทธ๊ฐ€ ํ†ต์งธ๋กœ ๋“ค์–ด ์žˆ๋Š” ๋“ฏ ํ•˜๋‹ค. ...(์ค‘๋žต)... SSD๋Š” ๋ฌด๊ฒŒ๊ฐ€ ๊ฐ€๋ฒผ์šฐ๋‹ˆ, ์ •๋ณด๋ฅผ ์‹ค์„ ๋•Œ ๊ตณ์ด ์ธ์ƒ‰ํ•ด์งˆ ํ•„์š”๋Š” ์—†๋‹ค๊ณ  ์ƒ๊ฐํ•œ ๋ชจ์–‘์ด๋‹ค. ์•„๋‹ˆ, ์ž๋ฃŒ๋ฅผ ๊ทธ๋ƒฅ ๋กฌ(ROM)์— ๊ตฌ์›Œ๋ฒ„๋ฆฐ๊ฑธ ์ˆ˜๋„ ์žˆ๋‹ค." ์ด ๋ถ€๋ถ„์„ ์ฝ์œผ๋ฉด์„œ SSD์™€ ROM์ด ๋ญ์˜€๋”๋ผ? SSD๋Š” ๋น„๊ต์  ์ต์ˆ™ํ•˜์ง€๋งŒ ROM์€ ๋“ค์–ด๋งŒ ๋ดค์ง€ ๋ฌด์—‡์ด์—ˆ๋Š”์ง€ ์ •ํ™•ํžˆ ๊ธฐ์–ต์ด ๋‚˜์ง€ ์•Š์•„์„œ ์ฐพ์•„๋ณด์•˜๋‹ค. 1. ROM ROM์€ Read-Only Memory์˜ ์•ฝ์ž๋กœ ์ฝ๊ธฐ ์ „์šฉ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ..

๐Ÿ’ป Programming/Algorithm

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค Lv. 0] ๊ตฌ์Šฌ์„ ๋‚˜๋ˆ„๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํ’€์ด ์‚ฌ์šฉ ์–ธ์–ด - ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ JavaScript JS 1. ๊ตฌ์Šฌ์„ ๋‚˜๋ˆ„๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜ 1) โ“ ๋ฌธ์ œ ์„ค๋ช… ๋จธ์“ฑ์ด๋Š” ๊ตฌ์Šฌ์„ ์นœ๊ตฌ๋“ค์—๊ฒŒ ๋‚˜๋ˆ„์–ด์ฃผ๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๊ตฌ์Šฌ์€ ๋ชจ๋‘ ๋‹ค๋ฅด๊ฒŒ ์ƒ๊ฒผ์Šต๋‹ˆ๋‹ค. ๋จธ์“ฑ์ด๊ฐ€ ๊ฐ–๊ณ  ์žˆ๋Š” ๊ตฌ์Šฌ์˜ ๊ฐœ์ˆ˜ balls์™€ ์นœ๊ตฌ๋“ค์—๊ฒŒ ๋‚˜๋ˆ„์–ด ์ค„ ๊ตฌ์Šฌ ๊ฐœ์ˆ˜ share์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, balls๊ฐœ์˜ ๊ตฌ์Šฌ ์ค‘ share๊ฐœ์˜ ๊ตฌ์Šฌ์„ ๊ณ ๋ฅด๋Š” ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ return ํ•˜๋Š” solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”. 2) ๐Ÿšซ ์ œํ•œ ์‚ฌํ•ญ 1 ≤ balls ≤ 30 1 ≤ share ≤ 30 ๊ตฌ์Šฌ์„ ๊ณ ๋ฅด๋Š” ์ˆœ์„œ๋Š” ๊ณ ๋ คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. share ≤ balls 3) โœ… ์ž…์ถœ๋ ฅ ์˜ˆ balls share result 3 2 3 5 3 10 ์ž…์ถœ๋ ฅ ์˜ˆ #1 ์„œ๋กœ ๋‹ค๋ฅธ ๊ตฌ์Šฌ 3๊ฐœ ์ค‘ ..

Jiwon()
'๐Ÿ’ป Programming' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก