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

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค61

[Swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์œ„ํด๋ฆฌ ์ฑŒ๋ฆฐ์ง€ 2์ฃผ์ฐจ ์ƒํ˜ธ ํ‰๊ฐ€ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - 2์ฃผ์ฐจ [[100,90,98,88,65],[50,45,99,85,77],[47,88,95,80,67],[61,57,100,80,65],[24,90,94,75,65]] "FBABD" [[70,49,90],[68,50,38],[73,31,100]] "CFD" programmers.co.kr Solution 1.scores์˜ ์ ์ˆ˜๋ฅผ ์„ธ๋กœ๋กœ ๋ฌถ์–ด์ค€๋‹ค. scores ์ค‘ i๋ฒˆ์งธ ํ•™์ƒ์˜ ์ ์ˆ˜๋“ค์€ i๋ฒˆ์งธ ์ด๋ฏ€๋กœ ์„ธ๋กœ๋กœ ๋ฌถ์–ด์„œ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. var selfScore = scores.map{$0[i]} 2. ์„ธ๋กœ๋กœ ๋ฌถ์€ ์ ์ˆ˜๋“ค ์ค‘ i๋ฒˆ์งธ(์ž๊ธฐ ์ž์‹ )๊ฐ€ ์ตœ๊ณ  ๋˜๋Š” ์ตœ์†Œ๋ผ๋ฉด maxOrMin์œผ๋กœ ์ €์žฅํ•˜๊ณ  ์‚ญ์ œํ•ด์ค๋‹ˆ๋‹ค. var maxOrMin = -1 if selfScore[i] == selfSc.. 2021. 8. 10.
[Swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์œ„ํด๋ฆฌ ์ฑŒ๋ฆฐ์ง€ 1์ฃผ์ฐจ ๋ถ€์กฑํ•œ ๊ธˆ์•ก ๊ณ„์‚ฐํ•˜๊ธฐ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - 1์ฃผ์ฐจ ์ƒˆ๋กœ ์ƒ๊ธด ๋†€์ด๊ธฐ๊ตฌ๋Š” ์ธ๊ธฐ๊ฐ€ ๋งค์šฐ ๋งŽ์•„ ์ค„์ด ๋Š์ด์งˆ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ๋†€์ด๊ธฐ๊ตฌ์˜ ์›๋ž˜ ์ด์šฉ๋ฃŒ๋Š” price์› ์ธ๋ฐ, ๋†€์ด๊ธฐ๊ตฌ๋ฅผ N ๋ฒˆ ์งธ ์ด์šฉํ•œ๋‹ค๋ฉด ์›๋ž˜ ์ด์šฉ๋ฃŒ์˜ N๋ฐฐ๋ฅผ ๋ฐ›๊ธฐ๋กœ ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ฆ‰, ์ฒ˜์Œ ์ด programmers.co.kr Solution price๋ฅผ 1๋ถ€ํ„ฐ count๊นŒ์ง€ ๋ฐฐ์ˆ˜๋ฅผ ๊ณฑํ•˜์—ฌ ๋”ํ•œ ๊ฒƒ์ด money๋ณด๋‹ค ํฌ๋‹ค๋ฉด ํ•ด๋‹น ๊ฐ€๊ฒฉ์„ ๋ฐ˜ํ™˜ํ•˜๊ณ  ์•„๋‹ˆ๋ผ๋ฉด 0์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. Source Code 2021. 8. 7.
[Swift] 2019 KAKAO WINTER INTERNSHIP ์ง•๊ฒ€๋‹ค๋ฆฌ ๊ฑด๋„ˆ๊ธฐ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ์ง•๊ฒ€๋‹ค๋ฆฌ ๊ฑด๋„ˆ๊ธฐ [2, 4, 5, 3, 2, 1, 4, 2, 5, 1] 3 3 programmers.co.kr Solution ํ•ด๋‹น ๋ฌธ์ œ๋Š” ์ด์ง„ํƒ์ƒ‰์œผ๋กœ ํ’€์–ด์•ผ ํ•˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. 1. stones์˜ ์ˆซ์ž๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•œ ๋’ค ์ค‘๋ณต ์ˆซ์ž๋ฅผ ์ œ๊ฑฐํ•œ๋‹ค. stones๋ฅผ Set๋กœ ๋งŒ๋“ค๊ณ  sorted ๋ฉ”์†Œ๋“œ๋กœ ์ •๋ ฌํ•ด์ค๋‹ˆ๋‹ค. (sort๋ผ๊ณ  ๋ถ€๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.) (ex [1,1,5,3,2,2] -> [1,2,3,5]) 2. ๊ฑด๋„ ์ˆ˜ ์žˆ๋Š”์ง€ ์—†๋Š”์ง€ ์ฒดํฌํ•ฉ๋‹ˆ๋‹ค. 0์ดํ•˜์˜ ์ˆซ์ž์˜ ์—ฐ์†๋œ ๊ฐฏ์ˆ˜๊ฐ€ k๋ณด๋‹ค ๊ฐ™๊ฑฐ๋‚˜ ํฌ๋‹ค๋ฉด ๊ฑด๋„ ์ˆ˜ ์—†๋Š” ์ง•๊ฒ€๋‹ค๋ฆฌ์ž…๋‹ˆ๋‹ค. (ex [-1, 0, -2, 1, 0] -> ์—ฐ์†๋œ 0์ดํ•˜ ๊ฐฏ์ˆ˜๋Š” 3) 3. sort๋ฅผ ์ด์ง„ํƒ์ƒ‰ ์ด์ง„ ํƒ์ƒ‰์œผ๋กœ sort์•ˆ์˜ ์ˆซ์ž ์ค‘ ๊ฑด๋„ ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ์ตœ.. 2021. 7. 23.
[Swift] 2021 KAKAO INTERNSHIP ์ˆซ์ž ๋ฌธ์ž์—ด๊ณผ ์˜๋‹จ์–ด Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ์ˆซ์ž ๋ฌธ์ž์—ด๊ณผ ์˜๋‹จ์–ด ๋„ค์˜ค์™€ ํ”„๋กœ๋„๊ฐ€ ์ˆซ์ž๋†€์ด๋ฅผ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋„ค์˜ค๊ฐ€ ํ”„๋กœ๋„์—๊ฒŒ ์ˆซ์ž๋ฅผ ๊ฑด๋„ฌ ๋•Œ ์ผ๋ถ€ ์ž๋ฆฟ์ˆ˜๋ฅผ ์˜๋‹จ์–ด๋กœ ๋ฐ”๊พผ ์นด๋“œ๋ฅผ ๊ฑด๋„ค์ฃผ๋ฉด ํ”„๋กœ๋„๋Š” ์›๋ž˜ ์ˆซ์ž๋ฅผ ์ฐพ๋Š” ๊ฒŒ์ž„์ž…๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ์ˆซ์ž์˜ ์ผ๋ถ€ ์ž programmers.co.kr Solution 1. ์˜๋‹จ์–ด ์ค‘ 2๋ฒˆ์งธ๊นŒ์ง€๋ฅผ key๊ฐ’์œผ๋กœ ํ•˜๊ณ  value๊ฐ’์œผ๋กœ ์˜๋‹จ์–ด์˜ ๊ธธ์ด์™€ ์˜๋ฏธํ•˜๋Š” ์ˆซ์ž๋ฅผ ์ €์žฅํ•œ๋‹ค. let allNumber = ["ze":[4,0],"on":[3,1],"tw":[3,2],"th":[5,3],"fo":[4,4],"fi":[4,5],"si":[3,6],"se":[5,7],"ei":[5,8],"ni":[4,9]] 2. s๋ฅผ ์ˆœํšŒํ•˜๋ฉด์„œ ์ˆซ์ž์ธ ๊ฒฝ์šฐ์™€ ๋ฌธ์ž์ธ ๊ฒฝ์šฐ๋กœ ์ •๋‹ต์„ ์™„์„ฑํ•œ๋‹ค. ๋ฌธ์ž๊ฐ€ ์ˆซ์ž์ธ ๊ฒฝ์šฐ a.. 2021. 7. 18.
[Swift] 2021 KAKAO INTERNSHIP ํ‘œํŽธ์ง‘ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ํ‘œ ํŽธ์ง‘ 8 2 ["D 2","C","U 3","C","D 4","C","U 2","Z","Z"] "OOOOXOOO" 8 2 ["D 2","C","U 3","C","D 4","C","U 2","Z","Z","U 1","C"] "OOXOXOOO" programmers.co.kr Solution ํ•ด๋‹น ๋ฌธ์ œ๋Š” Linked List ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์ด์šฉํ•ด์„œ ํ’€์–ด์•ผ ํ•˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. 1. 0๋ถ€ํ„ฐ n๊นŒ์ง€ ์ž๊ธฐ ์ด์ „์˜ ์ˆซ์ž์™€ ๋‹ค์Œ ์ˆซ์ž๋ฅผ ๋ฐฐ์—ด์— ๋‹ด์•„๋†“์Šต๋‹ˆ๋‹ค. func setLinkedList(n:Int) { for i in 0.. Int { return linkedList[index][0] } func next(_ index:Int) -> Int{ return linkedList[inde.. 2021. 7. 18.
[Swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์›”๊ฐ„ ์ฝ”๋“œ ์ฑŒ๋ฆฐ์ง€ 2 2๊ฐœ ์ดํ•˜๋กœ ๋‹ค๋ฅธ ๋น„ํŠธ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - 2๊ฐœ ์ดํ•˜๋กœ ๋‹ค๋ฅธ ๋น„ํŠธ programmers.co.kr Solution ์•„๋ž˜ ํ‘œ๋ฅผ ์ฐธ๊ณ ํ•˜๋ฉด ๊ทœ์น™์ด ์กฐ๊ธˆ ๋ณด์ด๋Š”๋ฐ 1. ์ง์ˆ˜์ผ ๋•Œ ์ง์ˆ˜์ผ ๋•Œ๋Š” ๋‹ค์Œ ์ˆซ์ž์˜ 2์ง„์ˆ˜ ๋งจ ๋งˆ์ง€๋ง‰ 0์„ 1๋กœ ๋ฐ”๊ฟ”์ฃผ๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๊ณ ๋กœ ๋ฐ”๋กœ ๊ทธ ๋‹ค์Œ ์ˆซ์ž์™€์˜ 2์ง„์ˆ˜๋Š” ๋”ฑ ํ•œ์ž๋ฆฌ๋งŒ ๋‹ค๋ฅธ ๊ฒฝ์šฐ์ด๋ฏ€๋กœ ๋ฌด์กฐ๊ฑด n+1์ด ์ œ์ผ ์ž‘์€ ์ˆซ์ž๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. 2. ํ™€์ˆ˜์ผ ๋•Œ ํ™€์ˆ˜์ผ ๋•Œ๋Š” ๊ฐ€์žฅ ๋งˆ์ง€๋ง‰๋ฒˆ์งธ 0์„ 1๋กœ ๋ฐ”๊พธ๊ณ  ๊ทธ ๋‹ค์Œ ์ˆซ์ž๋ฅผ 0์œผ๋กœ ๋ฐ”๊ฟ”์ค€ 2์ง„์ˆ˜๊ฐ€ ์ œ์ผ ์ž‘์€ ์ˆซ์ž๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ ๋ชจ๋‘ 1์ด๋ผ๋ฉด ๋งจ ์ฒซ๋ฒˆ์งธ ์ˆซ์ž๋ฅผ 0์œผ๋กœ ๋ฐ”๊ฟ”์ฃผ๊ณ  ๋งจ ์•ž์— 1์„ ์ถ”๊ฐ€ํ•ด์ค๋‹ˆ๋‹ค. ex) 1001 -> 1010, 111 -> 1011 Source Code ๋ฐฐ์šด์  ์ง์ˆ˜์ผ ๋•Œ 2์ง„์ˆ˜๋Š” ๋์ด ๋ฌด์กฐ๊ฑด 0์ด๋‹ค. ํ™€์ˆ˜์ผ ๋•Œ 2์ง„์ˆ˜๋Š” ๋์ด ๋ฌด์กฐ๊ฑด 1.. 2021. 7. 3.
[Swift] 2019 ์นด์นด์˜ค ๊ฐœ๋ฐœ์ž ๊ฒจ์šธ ์ธํ„ด์‰ฝ ๋ถˆ๋Ÿ‰ ์‚ฌ์šฉ์ž Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๋ถˆ๋Ÿ‰ ์‚ฌ์šฉ์ž ๊ฐœ๋ฐœํŒ€ ๋‚ด์—์„œ ์ด๋ฒคํŠธ ๊ฐœ๋ฐœ์„ ๋‹ด๋‹นํ•˜๊ณ  ์žˆ๋Š” "๋ฌด์ง€"๋Š” ์ตœ๊ทผ ์ง„ํ–‰๋œ ์นด์นด์˜ค์ด๋ชจํ‹ฐ์ฝ˜ ์ด๋ฒคํŠธ์— ๋น„์ •์ƒ์ ์ธ ๋ฐฉ๋ฒ•์œผ๋กœ ๋‹น์ฒจ์„ ์‹œ๋„ํ•œ ์‘๋ชจ์ž๋“ค์„ ๋ฐœ๊ฒฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฐ ์‘๋ชจ์ž๋“ค์„ ๋”ฐ๋กœ ๋ชจ์•„ ๋ถˆ๋Ÿ‰ programmers.co.kr Solution 1. ๋ถˆ๋Ÿ‰ ์‚ฌ์šฉ์ž์™€ ์œ ์ € ์•„์ด๋””๋ฅผ ๋น„๊ตํ•œ๋‹ค. func isEqual(userId:String,bannedId:String) -> Bool { if userId.count != bannedId.count { return false } let uid = userId.map{String($0)} let bid = bannedId.map{String($0)} for (i,b) in bid.enumerated() { if b != "*" &.. 2021. 6. 26.
[Swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๊ฐ€์žฅ ๊ธด ํŒฐ๋ฆฐ๋“œ๋กฌ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๊ฐ€์žฅ ๊ธด ํŒฐ๋ฆฐ๋“œ๋กฌ ์•ž๋’ค๋ฅผ ๋’ค์ง‘์–ด๋„ ๋˜‘๊ฐ™์€ ๋ฌธ์ž์—ด์„ ํŒฐ๋ฆฐ๋“œ๋กฌ(palindrome)์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋ฌธ์ž์—ด s๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, s์˜ ๋ถ€๋ถ„๋ฌธ์ž์—ด(Substring)์ค‘ ๊ฐ€์žฅ ๊ธด ํŒฐ๋ฆฐ๋“œ๋กฌ์˜ ๊ธธ์ด๋ฅผ return ํ•˜๋Š” solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด ์ฃผ์„ธ์š”. ์˜ˆ๋ฅผ๋“ค programmers.co.kr Solution ํ•ด๋‹น ๋ฌธ์ œ๋Š” ์™„์ „ํƒ์ƒ‰ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ๋ชจ๋“  ๊ฒฝ์šฐ๋ฅผ ํƒ์ƒ‰ํ•ด์•ผ ์ •๋‹ต์„ ์•Œ ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํšจ์œจ์ ์œผ๋กœ ํƒ์ƒ‰ํ•˜๊ธฐ ์œ„ํ•ด ์ฃผ์–ด์ง„ ๋ฌธ์ž๋ฅผ ๊ธด ๋ฌธ์ž์—ด์—์„œ ์งง์€ ๋ฌธ์ž์—ด๋กœ ์ž˜๋ผ์„œ ๋น„๊ตํ•˜๋Š”๊ฒŒ ํ•ต์‹ฌ์ž…๋‹ˆ๋‹ค. 1. ์ดˆ๊ธฐ๊ฐ’ ์„ค์ • ์ธ๋ฑ์Šค๋ฅผ ์ฐพ๊ธฐ ์‰ฝ๊ฒŒ ๋ฌธ์ž์—ด์„ ๋งคํ•‘ํ•œ ๊ฐ’๊ณผ ๊ฐ€์žฅ ๊ธด ๊ฐ’์˜ ์ดˆ๊ธฐ๊ฐ’์„ ์„ค์ •ํ•ด์ค๋‹ˆ๋‹ค. //๋ฌธ์ž์—ด ์ธ๋ฑ์Šค๋ฅผ ์ฐพ๊ธฐ ์‰ฝ๊ฒŒ ๋งคํ•‘ํ•ด์คŒ let str:[String] = s.map{Stri.. 2021. 6. 22.
[Swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ˆซ์ž ๊ฒŒ์ž„ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ์ˆซ์ž ๊ฒŒ์ž„ xx ํšŒ์‚ฌ์˜ 2xN๋ช…์˜ ์‚ฌ์›๋“ค์€ N๋ช…์”ฉ ๋‘ ํŒ€์œผ๋กœ ๋‚˜๋ˆ  ์ˆซ์ž ๊ฒŒ์ž„์„ ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋‘ ๊ฐœ์˜ ํŒ€์„ ๊ฐ๊ฐ AํŒ€๊ณผ BํŒ€์ด๋ผ๊ณ  ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์ˆซ์ž ๊ฒŒ์ž„์˜ ๊ทœ์น™์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋จผ์ € ๋ชจ๋“  ์‚ฌ์›์ด ๋ฌด์ž‘์œ„๋กœ programmers.co.kr Solution 1. a์™€ b๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ์‹œํ‚ต๋‹ˆ๋‹ค. (sortB,sortA๋ผ๊ณ  ์นญํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.) 2. sortB๋ฅผ ์ˆœํšŒํ•˜๋ฉด์„œ sortA์˜ ๊ฐ€์žฅ ์ฒซ๋ฒˆ์งธ๊ฐ’(๊ฐ€์žฅ ์ž‘์€๊ฐ’)์ด ๋” ์ž‘๋‹ค๋ฉด sortA์˜ ์ฒซ๋ฒˆ์งธ ๊ฐ’์„ ์‚ญ์ œํ•ด์ค๋‹ˆ๋‹ค. 3. ์ „์ฒด ๊ฐฏ์ˆ˜์—์„œ sortA์˜ ๊ฐฏ์ˆ˜๋ฅผ ๋นผ์ค๋‹ˆ๋‹ค. Souce Code func solution(_ a:[Int], _ b:[Int]) -> Int { var sortA = a.sorted() b.sorted().f.. 2021. 6. 11.
[Swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์›”๊ฐ„ ์ฝ”๋“œ ์ฑŒ๋ฆฐ์ง€ 2 ๋ชจ๋‘ 0์œผ๋กœ ๋งŒ๋“ค๊ธฐ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๋ชจ๋‘ 0์œผ๋กœ ๋งŒ๋“ค๊ธฐ ๊ฐ ์ ์— ๊ฐ€์ค‘์น˜๊ฐ€ ๋ถ€์—ฌ๋œ ํŠธ๋ฆฌ๊ฐ€ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ๋‹น์‹ ์€ ๋‹ค์Œ ์—ฐ์‚ฐ์„ ํ†ตํ•˜์—ฌ, ์ด ํŠธ๋ฆฌ์˜ ๋ชจ๋“  ์ ๋“ค์˜ ๊ฐ€์ค‘์น˜๋ฅผ 0์œผ๋กœ ๋งŒ๋“ค๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ์ž„์˜์˜ ์—ฐ๊ฒฐ๋œ ๋‘ ์ ์„ ๊ณจ๋ผ์„œ ํ•œ์ชฝ์€ 1 ์ฆ๊ฐ€์‹œํ‚ค๊ณ , ๋‹ค๋ฅธ ํ•œ programmers.co.kr Solution 1. 0์œผ๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ํŠธ๋ฆฌ์ธ์ง€ ํ™•์ธํ•˜๊ธฐ ๊ฐ ๊ฐ€์ค‘์น˜์˜ ๋ชจ๋“  ํ•ฉ์ด 0์ด๋ผ๋ฉด 0์œผ๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ํŠธ๋ฆฌ์ž…๋‹ˆ๋‹ค. ๋งŒ์•ฝ 0์œผ๋กœ ๋งŒ๋“ค ์ˆ˜ ์—†๋‹ค๋ฉด -1์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. (canMakeZero ํ•จ์ˆ˜๋ฅผ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š”!) 2. ๊ฐ ์ •์ ๋งˆ๋‹ค ๋ถ€๋ชจ์™€ ์ž์‹์„ ์„ธํŒ…ํ•˜๊ธฐ ๊ฐ edges์— ์—ฐ๊ฒฐ๋œ ์ •์ ๋“ค์„ ์„œ๋กœ ๋ถ€๋ชจ์™€ ์ž์‹์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. (setChildren ํ•จ์ˆ˜๋ฅผ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š”!) 3. DFS๋กœ ๋ฆฌํ”„ ๋…ธ๋“œ ์ฐพ๊ธฐ 0๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด 0๊ณผ ์—ฐ๊ฒฐ๋œ .. 2021. 6. 2.
[Swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์›”๊ฐ„ ์ฝ”๋“œ ์ฑŒ๋ฆฐ์ง€ 2 ๊ด„ํ˜ธ ํšŒ์ „ํ•˜๊ธฐ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๊ด„ํ˜ธ ํšŒ์ „ํ•˜๊ธฐ programmers.co.kr Solution ํ•ด๋‹น ๋ฌธ์ œ๋Š” ์Šคํƒ์„ ์ด์šฉํ•ด์„œ ํ’€์–ด์•ผ ํ•˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ์—ด๋ฆฐ ๊ด„ํ˜ธ = "{","[","(" ๋‹ซํžŒ ๊ด„ํ˜ธ = "}","]",")" ๋ผ๊ณ  ํ‘œํ˜„ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. 1. ์Šคํƒ์— ์—ด๋ฆฐ ๊ด„ํ˜ธ๋ฅผ ๋„ฃ๊ณ  s๋ฅผ ์ˆœํšŒํ•˜๋ฉฐ ๋‹ซํžŒ ๊ด„ํ˜ธ์™€ ๋น„๊ตํ•œ๋‹ค. ์ฃผ์–ด์ง„ s๋ฅผ ์ˆœํšŒํ•˜๋ฉด์„œ ์Šคํƒ์— ์—ด๋ฆฐ ๊ด€ํ˜ธ๋ฅผ ๋„ฃ์Šต๋‹ˆ๋‹ค. ๋งŒ์•ฝ ๋‹ซํžŒ ๊ด„ํ˜ธ๊ฐ€ ๋‚˜์™”์„ ๋•Œ ์Šคํƒ์ด ๋น„์–ด์žˆ๊ฑฐ๋‚˜ ์Šคํƒ์˜ ๋งˆ์ง€๋ง‰๋ฒˆ์งธ ์—ด๋ฆฐ๊ด„ํ˜ธ์™€ ํ˜„์žฌ ๋‹ซํžŒ ๊ด„ํ˜ธ๊ฐ€ ๋™์ผํ•˜์ง€ ์•Š๋‹ค๋ฉด ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š์€ ๊ด„ํ˜ธ์ž…๋‹ˆ๋‹ค. (isRightBrackets ํ•จ์ˆ˜๋ฅผ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š”!) 2. s๋ฅผ ์™ผ์ชฝ์œผ๋กœ ํšŒ์ „ํ•˜๋ฉฐ 1์„ ๋ฐ˜๋ณตํ•œ๋‹ค. s๋ฅผ ํšŒ์ „ํ•˜๊ณ  1์—์„œ ํ–ˆ๋˜ ๋ฐฉ์‹์œผ๋กœ ๋ฐ˜๋ณตํ•ฉ๋‹ˆ๋‹ค. (rotateLeft ํ•จ์ˆ˜๋ฅผ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š”!) 3. ์˜ฌ๋ฐ”๋ฅธ ๊ด„ํ˜ธ์ผ .. 2021. 5. 31.
[Swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ํ–‰๋ ฌ ํ…Œ๋‘๋ฆฌ ํšŒ์ „ํ•˜๊ธฐ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ํ–‰๋ ฌ ํ…Œ๋‘๋ฆฌ ํšŒ์ „ํ•˜๊ธฐ 6 6 [[2,2,5,4],[3,3,6,6],[5,1,6,3]] [8, 10, 25] 3 3 [[1,1,2,2],[1,2,2,3],[2,1,3,2],[2,2,3,3]] [1, 1, 5, 3] programmers.co.kr Solution 1. ์ง์‚ฌ๊ฐํ˜•์˜ ์ˆซ์ž๋“ค์„ ํ–‰๊ณผ ์—ด์— ๋งž๊ฒŒ ๋„ฃ์–ด์ค€๋‹ค. ํ•œ ํ–‰์„ ํ–‰์˜ ํฌ๊ธฐ๋งŒํผ ๋งŒ๋“ค์–ด์„œ ์—ด์˜ ์ˆ˜๋งŒํผ ๋„ฃ์–ด์ค€๋‹ค. 2. ํ…Œ๋‘๋ฆฌ์˜ ์œ„์ชฝ ํ–‰๊ณผ ์•„๋ž˜์ชฝ ํ–‰์„ ํšŒ์ „ํ•œ ์ˆซ์ž์— ๋งž๊ฒŒ ๋ฐ”๊ฟ”์ค€๋‹ค. (ํ…Œ๋‘๋ฆฌ๋ฅผ 1,1,6,6 ์œผ๋กœ ๊ฐ€์ •ํ–ˆ์„๋•Œ) ๋จผ์ € ์œ„์ชฝ ํ–‰์€ ์ˆซ์ž๋“ค์„ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์ „๋ถ€ ๋ฐ€๊ณ  ๊ฐ€์žฅ ์ฒซ๋ฒˆ์งธ ์ˆซ์ž๋ฅผ ๋ฐ”๋กœ ์•„๋ž˜ ํ–‰์˜ ๊ฐ€์žฅ ์™ผ์ชฝ์˜ ์ˆซ์ž๋กœ ๋Œ€์ฒดํ•œ๋‹ค. ์•„๋žซ์ชฝ ํ–‰์€ ๋ฐ˜๋Œ€๋กœ ์ˆซ์ž๋“ค์„ ์™ผ์ชฝ์œผ๋กœ ์ „๋ถ€ ๋ฐ€๊ณ  ๊ฐ€์žฅ ๋งˆ์ง€๋ง‰ ์ˆซ์ž๋ฅผ ๋ฐ”๋กœ ์œ„ ํ–‰์˜ ๊ฐ€์žฅ.. 2021. 5. 24.
728x90
๋ฐ˜์‘ํ˜•