Notice
Recent Posts
Link
Today
Total
01-29 07:20
๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (74)

dingdong coding

[ ์ฝ”๋“œ์—… ] Greedy

๋ฌธ์ œ์ง‘ / ๊ทธ๋ฆฌ๋”” codeup.kr [ 2001 ] ์ตœ์†Œ ๋Œ€๊ธˆ โ€ป ๋ฌธ์ œ ํŒŒํŒŒ ํŒŒ์Šคํƒ€ ๊ฐ€๊ฒŒ๋Š” ์ ์‹ฌ ์ถ”์ฒœ ํŒŒ์Šคํƒ€์™€ ์ƒ๊ณผ์ผ ์ฅฌ์Šค ์„ธํŠธ ๋ฉ”๋‰ด๊ฐ€ ์ธ๊ธฐ๊ฐ€ ์ข‹๋‹ค. ์ด ์„ธํŠธ ๋ฉ”๋‰ด๋ฅผ ์ฃผ๋ฌธํ•˜๋ฉด ๊ทธ ๋‚ ์˜ 3 ์ข…๋ฅ˜์˜ ํŒŒ์Šคํƒ€์™€ 2 ์ข…๋ฅ˜์˜ ์ƒ๊ณผ์ผ ์ฅฌ์Šค์—์„œ ํ•˜๋‚˜์”ฉ ์„ ํƒํ•œ๋‹ค. ํŒŒ์Šคํƒ€์™€ ์ƒ๊ณผ์ผ ์ฅฌ์Šค์˜ ๊ฐ€๊ฒฉ ํ•ฉ๊ณ„์—์„œ 10%๋ฅผ ๋”ํ•œ ๊ธˆ์•ก์ด ๋Œ€๊ธˆ๋œ๋‹ค. ์–ด๋Š ๋‚ ์˜ ํŒŒ์Šคํƒ€์™€ ์ƒ๊ณผ์ผ ์ฅฌ์Šค์˜ ๊ฐ€๊ฒฉ์ด ์ฃผ์–ด ์กŒ์„ ๋•Œ, ๊ทธ ๋‚  ์„ธํŠธ ๋ฉ”๋‰ด์˜ ๋Œ€๊ธˆ์˜ ์ตœ์†Œ๊ฐ’์„ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๋ผ. โ€ป ์ž…๋ ฅ ์ž…๋ ฅ์€ 5 ํ–‰์œผ๋กœ ์ด๋ฃจ์–ด์ง€๋ฉฐ, ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ์–‘์˜ ์ •์ˆ˜๊ฐ€ ์ ํ˜€์žˆ๋‹ค. 1ํ–‰์˜ ์ •์ˆ˜๋Š” ์ฒซ ๋ฒˆ์งธ ํŒŒ์Šคํƒ€ ๊ฐ€๊ฒฉ์ด๋‹ค. 2ํ–‰์˜ ์ •์ˆ˜๋Š” ๋‘ ๋ฒˆ์งธ ํŒŒ์Šคํƒ€ ๊ฐ€๊ฒฉ์ด๋‹ค. 3ํ–‰์˜ ์ •์ˆ˜๋Š” ์„ธ ๋ฒˆ์งธ ํŒŒ์Šคํƒ€ ๊ฐ€๊ฒฉ์ด๋‹ค. 4ํ–‰์˜ ์ •์ˆ˜๋Š” ์ฒซ ๋ฒˆ์งธ ์ƒ๊ณผ์ผ ์ฅฌ์Šค ๊ฐ€๊ฒฉ์ด๋‹ค. 5ํ–‰์˜ ์ •์ˆ˜๋Š” ๋‘ ๋ฒˆ์งธ ..

๐Ÿ”ตCoding Test/CodeUp 2022. 2. 13. 15:18
[ ์ด๊ฒƒ์ด ์ฝ”๋”ฉํ…Œ์ŠคํŠธ๋‹ค with ํŒŒ์ด์ฌ ] Greedy

๊ทธ๋ฆฌ๋”” (ํƒ์š•๋ฒ•) : ํ˜„์žฌ ์ƒํ™ฉ์—์„œ ์ง€๊ธˆ ๋‹น์žฅ ์ข‹์€ ๊ฒƒ๋งŒ ๊ณ ๋ฅด๋Š” ๋ฐฉ๋ฒ• 1. ๊ฑฐ์Šค๋ฆ„๋ˆ (์˜ˆ์ œ) 2. ํฐ ์ˆ˜์˜ ๋ฒ•์น™ (์‹ค์ „๋ฌธ์ œ) 3. ์ˆซ์ž ์นด๋“œ ๊ฒŒ์ž„ (์‹ค์ „๋ฌธ์ œ) 4. 1์ด ๋  ๋•Œ๊นŒ์ง€ (์‹ค์ „๋ฌธ์ œ) [ ์˜ˆ์ œ 1 ] ๊ฑฐ์Šค๋ฆ„๋ˆ โ€ป ๋ฌธ์ œ ์นด์šดํ„ฐ์—๋Š” ๊ฑฐ์Šค๋ฆ„๋ˆ์œผ๋กœ ์‚ฌ์šฉํ•  500์›,100์›,50์›,10์›์งœ๋ฆฌ ๋™์ „์ด ๋ฌดํ•œํžˆ ์กด์žฌํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•œ๋‹ค. ์†๋‹˜์—๊ฒŒ ๊ฑฐ์Šฌ๋Ÿฌ ์ค˜์•ผ ํ•  ๋ˆ์ด N์›์ผ ๋•Œ ๊ฑฐ์Šฌ๋Ÿฌ์ค˜์•ผํ•  ๋™์ „์˜ ์ตœ์†Œ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜๋ผ. ๋‹จ N์€ ํ•ญ์ƒ 10์˜ ๋ฐฐ์ˆ˜์ด๋‹ค. # ๊ฑฐ์Šค๋ฆ„ ๋ˆ n = 1260 count = 0 # ํฐ ๋‹จ์œ„์˜ ํ™”ํ๋ถ€ํ„ฐ ์ฐจ๋ก€๋Œ€๋กœ ํ™•์ธํ•˜๊ธฐ array = [500, 100, 50, 10] for coin in array: count += n // coin # ํ•ด๋‹น ํ™”ํ๋กœ ๊ฑฐ์Šฌ๋Ÿฌ ์ค„ ์ˆ˜ ์žˆ๋Š” ๋™์ „์˜ ๊ฐœ์ˆ˜ ์„ธ๊ธฐ // : ..

[ Python ] ์ฃผ์š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๋ฌธ๋ฒ•๊ณผ ์ฃผ์˜์ 

ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ž€, ํŠน์ •ํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ํ‘œ์ค€ ์†Œ์Šค์ฝ”๋“œ๋ฅผ ๋ฏธ๋ฆฌ ๊ตฌํ˜„ํ•ด ๋†“์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์˜๋ฏธ 1) ๋‚ด์žฅ ํ•จ์ˆ˜ : print( ), input( )๊ณผ ๊ฐ™์€ ๊ธฐ๋ณธ ์ž…์ถœ๋ ฅ ๊ธฐ๋Šฅ๋ถ€ํ„ฐ sorted( )์™€ ๊ฐ™์€ ์ •๋ ฌ ๊ธฐ๋Šฅ์„ ํฌํ•จํ•˜๊ณ  ์žˆ๋Š” ๊ธฐ๋ณธ ๋‚ด์žฅ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๋‹ค. ํŒŒ์ด์ฌ ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•  ๋•Œ ์—†์–ด์„œ๋Š” ์•ˆ๋˜๋Š” ํ•„์ˆ˜์ ์ธ ๊ธฐ๋Šฅ์„ ํฌํ•จํ•˜๊ณ  ์žˆ๋‹ค. 2) itertools : ํŒŒ์ด์ฌ์—์„œ ๋ฐ˜๋ณต๋˜๋Š” ํ˜•ํƒœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๋‹ค. ์ˆœ์—ด๊ณผ ์กฐํ•ฉ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. 3) heapq : ํž™(heap) ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๋‹ค. ์šฐ์„ ์ˆœ์œ„ ํ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•œ๋‹ค. 4) bisect : ์ด์ง„ํƒ์ƒ‰(Binary Search) ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๋‹ค. 5) collectio..

๐Ÿ”ตCoding Test/Syntax 2022. 2. 4. 19:30
[ Python ] ์ž๋ฃŒํ˜•

์ˆ˜ ์ž๋ฃŒํ˜• * ์ •์ˆ˜ํ˜•์„ ๋‹ค๋ฃจ๋Š” ๋ฌธ์ œ์˜ ๋น„์œจ์ด ๋” ๋†’๋‹ค ์ •์ˆ˜ํ˜• Integer : ์–‘์˜ ์ •์ˆ˜, ์Œ์˜ ์ •์ˆ˜, 0 a = 1000 # ์–‘์˜ ์ •์ˆ˜ print(a) #1000 a = -7 # ์Œ์˜ ์ •์ˆ˜ print(a) #-7 #0 a = 0 print(a) #0 ์˜ˆ๋ฅผ ๋“ค์–ด ๋Œ€๋ถ€๋ถ„์˜ ์–ธ์–ด์—์„œ๋Š” HaspMap ๊ณผ ๊ฐ™์€ ๋ณ„๋„์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ด์šฉํ•ด์•ผ ํŒŒ์ด์ฌ์˜ ์‚ฌ์ „ ์ž๋ฃŒํ˜• ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. ํŒŒ์ด์ฌ์—๋Š” ๊ธฐ๋ณธ์ž๋ฃŒํ˜•์ด ์ด๋ฅผ ์ง€์›ํ•˜๋ฏ€๋กœ ๊ตฌํ˜„์ด ํŽธ๋ฆฌํ•˜๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋‹ค. ์‹ค์ˆ˜ํ˜• Real Number : ์–‘์˜ ์‹ค์ˆ˜, ์Œ์˜ ์‹ค์ˆ˜ * ์†Œ์ˆ˜๋ถ€๊ฐ€ 0์ด๊ฑฐ๋‚˜ ์ •์ˆ˜๋ถ€๊ฐ€ 0์ธ ์†Œ์ˆ˜๋Š” 0์„ ์ƒ๋žตํ•˜๊ณ  ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค. a = 157.93 # ์–‘์˜ ์‹ค์ˆ˜ print(a) # 157.93 a = -1837.2 # ์Œ์˜ ์‹ค์ˆ˜ print(a) # -183..

๐Ÿ”ตCoding Test/Syntax 2022. 2. 4. 03:59
์ œ์–ด์˜ ์—ญ์ „๊ณผ ์˜์กด์„ฑ ์ฃผ์ž… ( Inversion of Control, Dependency Injection )

์ผ๋ฐ˜์ ์ธ ์ž๋ฐ” ํ”„๋กœ๊ทธ๋žจ์—์„œ๋Š” ๊ฐ ๊ฐ์ฒด๋“ค์ด ํ”„๋กœ๊ทธ๋žจ์˜ ํ๋ฆ„์„ ๊ฒฐ์ •ํ•˜๊ณ  ๊ฐ ๊ฐ์ฒด๋ฅผ ์ง์ ‘ ์ƒ์„ฑ ๋ฐ ์กฐ์ž‘ํ•˜๋Š” ์ž‘์—…์„ ํ–ˆ์Šต๋‹ˆ๋‹ค. ( ๊ฐ์ฒด๋ฅผ ์ง์ ‘ ์ƒ์„ฑํ•˜์—ฌ ๋ฉ”์„œ๋“œ ํ˜ธ์ถœ ) ์ฆ‰, ๋ชจ๋“  ์ž‘์—…์„ ์‚ฌ์šฉ์ž๊ฐ€ ์ œ์–ดํ•˜๋Š” ๊ตฌ์กฐ์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ œ์–ด์˜ ์—ญ์ „์ด ์ ์šฉ๋œ ๊ฒฝ์šฐ, ๊ฐ์ฒด์˜ ์ƒ์„ฑ์„ ํŠน๋ณ„ํ•œ ๊ด€๋ฆฌ ์œ„์ž„ ์ฃผ์ฒด์—๊ฒŒ ๋งก๊น๋‹ˆ๋‹ค. 1. ์ œ์–ด์˜ ์—ญ์ „ ( Ioc, Inversion of Control ) : ์ œ์–ด์˜ ์—ญ์ „์ด๋ž€, ๋ง ๊ทธ๋Œ€๋กœ '์—ญ์œผ๋กœ ์ œ์–ดํ•˜๋Š” ๊ฒƒ'์ด๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ๋ˆ„๊ฐ€ ์–ด๋–ค ๊ฒƒ์„ ์ œ์–ดํ•˜๋Š”์ง€ ์•Œ์•„๋ด…์‹œ๋‹ค. ๊ธฐ์กด = ๊ตฌํ˜„ ๊ฐ์ฒด ์Šค์Šค๋กœ, ๊ฐœ๋ฐœ์ž๊ฐ€ ์—ญ์ „๋œ ์ฃผ์ฒด = ์™ธ๋ถ€ ์กฐ๋ฆฝ๊ธฐ (assembler) + Spring FrameWork์—์„œ๋Š” Ioc Container ๋ฌด์—‡์„ ์ œ์–ด = ๊ตฌํ˜„ ๊ฐ์ฒด์˜ ์ƒ์„ฑ ๋ฐ ์—ฐ๊ฒฐ, ์ƒ๋ช…์ฃผ๊ธฐ ๊ด€๋ฆฌ, ์ œ์–ด ํ๋ฆ„์— ๋Œ€ํ•œ ๊ถŒํ•œ..

๐ŸSpring/Basic 2022. 1. 26. 05:59
2021 ํ•˜๋ฐ˜๊ธฐ ICT ํ•™์ ์—ฐ๊ณ„ ํ”„๋กœ์ ํŠธ ์ธํ„ด์‹ญ

์ง€๋‚œ 2021 ํ•˜๋ฐ˜๊ธฐ ICT ํ•™์ ์—ฐ๊ณ„ ํ”„๋กœ์ ํŠธ ์ธํ„ด์‹ญ์— ์ฐธ์—ฌํ–ˆ๋˜ ๊ฒฝํ—˜์„ ๊ธฐ๋กํ•˜๊ณ ์ž ํ•œ๋‹ค. ํ•œ๊ตญ์ •๋ณด์‚ฐ์—…์—ฐํ•ฉํšŒ์—์„œ ์ง„ํ–‰ํ•˜๋Š” ์ธํ„ด์‹ญ ํ”„๋กœ์ ํŠธ๋กœ 9์›”๋ถ€ํ„ฐ 12์›”๊นŒ์ง€ ์•ฝ 4๊ฐœ์›” ๋™์•ˆ ์—ฐ์ˆ˜์—…์ฒด์—์„œ ๊ทผ๋ฌดํ•˜๋ฉฐ ํ•™์ ๋„ ์–ป๊ณ  ํ˜„์—…๋„ ๊ฒฝํ—˜ํ•  ์ˆ˜ ์žˆ๋Š” ์ข‹์€ ์ทจ์ง€์˜ ํ”„๋กœ์ ํŠธ๋ผ๋Š” ์ƒ๊ฐ์ด๋“ ๋‹ค. ์ง€์› ํ”„๋กœ์„ธ์Šค ์—ฐ์ˆ˜๊ธฐ์—… ๋ชฉ๋ก ํ™•์ธ → ์„œ๋ฅ˜ ์ „ํ˜• → ( ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ) → ๋ฉด์ ‘ ์ „ํ˜• → ์ธํ„ด์‹ญ ์ˆ˜ํ–‰ * ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ์œ ๋ฌด๋Š” ์—ฐ์ˆ˜๊ธฐ์—…๋งˆ๋‹ค ์ƒ์ดํ•˜๋‹ค. https://www.ictintern.or.kr/main.do ICT ํ•™์ ์—ฐ๊ณ„ ํ”„๋กœ์ ํŠธ ์ธํ„ด์‹ญ ICT ํ•™์ ์—ฐ๊ณ„ ํ”„๋กœ์ ํŠธ ์ธํ„ด์‹ญ www.ictintern.or.kr ์ฐธ์—ฌ๋™๊ธฐ ์ฝ”๋กœ๋‚˜19๋กœ ์ธํ•ด 1๋…„ ๋ฐ˜ ๋™์•ˆ ์˜จ๋ผ์ธ ์ˆ˜์—…์„ ๋“ฃ๊ฒŒ ๋˜๋ฉด์„œ ๋งˆ์ง€๋ง‰ ํ•™๊ธฐ๋งŒํผ์€ ๋ฐ–์œผ๋กœ ๋‚˜์™€์„œ ํ˜„์—…์„ ๊ฒฝํ—˜ํ•ด๋ณด๊ณ  ์‹ถ์—ˆ๋‹ค. ๊ทธ๋Ÿฌ๋˜..