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

๐Ÿ“– Problem Solution204

[Swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์œ„ํด๋ฆฌ ์ฑŒ๋ฆฐ์ง€ 3์ฃผ์ฐจ ํผ์ฆ ์กฐ๊ฐ ์ฑ„์šฐ๊ธฐ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - 3์ฃผ์ฐจ [[1,1,0,0,1,0],[0,0,1,0,1,0],[0,1,1,0,0,1],[1,1,0,1,1,1],[1,0,0,0,1,0],[0,1,1,1,0,0]] [[1,0,0,1,1,0],[1,0,1,0,1,0],[0,1,1,0,1,1],[0,0,1,0,0,0],[1,1,0,1,1,0],[0,1,0,0,0,0]] 14 [[0,0,0],[1,1,0],[1,1,1]] [[1,1,1],[1,0,0],[0,0,0]] 0 programmers.co.kr Solution 1. ๊ฒŒ์ž„๋ณด๋“œ์™€ ํ…Œ์ด๋ธ”์˜ ํผ์ฆ ์กฐ๊ฐ๋“ค์„ ์ฐพ๋Š”๋‹ค. ๊ฒŒ์ž„๋ณด๋“œ์™€ ํ…Œ์ด๋ธ”์˜ ํผ์ฆ ์กฐ๊ฐ๋“ค์„ ์ฐพ๊ธฐ ์œ„ํ•ด์„  BFS ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•ด์•ผ ๋ฉ๋‹ˆ๋‹ค. ๊ฒŒ์ž„๋ณด๋“œ๋ฅผ ํƒ์ƒ‰ํ•  ๋• ๋งŒ์•ฝ 0์„ ๋งŒ๋‚˜๊ฒŒ ๋˜์—ˆ๋‹ค๋ฉด ๊ทธ ์ฃผ๋ณ€ ์™ผ์ชฝ,์˜ค๋ฅธ์ชฝ,์œ„,์•„๋ž˜๊ฐ€ 0.. 2021. 8. 20.
[Swift] 2020 KAKAO BLIND RECRUITMENT ๊ธฐ๋‘ฅ๊ณผ ๋ณด ์„ค์น˜ํ•˜๊ธฐ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๊ธฐ๋‘ฅ๊ณผ ๋ณด ์„ค์น˜ 5 [[1,0,0,1],[1,1,1,1],[2,1,0,1],[2,2,1,1],[5,0,0,1],[5,1,0,1],[4,2,1,1],[3,2,1,1]] [[1,0,0],[1,1,1],[2,1,0],[2,2,1],[3,2,1],[4,2,1],[5,0,0],[5,1,0]] 5 [[0,0,0,1],[2,0,0,1],[4,0,0,1],[0,1,1,1],[1,1,1,1],[2,1,1,1],[3,1,1,1],[2,0,0,0],[1,1,1,0],[2,2,0,1]] [[ programmers.co.kr Solution 1. ๊ธฐ๋‘ฅ์„ ์ถ”๊ฐ€ํ•  ๋•Œ ์ ํ•ฉํ•œ์ง€ ํ™•์ธํ•œ๋‹ค. ๋ฐ”๋‹ฅ,๊ธฐ๋‘ฅ ์œ„,๋ณด์˜ ์œ„์ผ ๊ฒฝ์šฐ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. func checkRightPillars(x:Int,y:In.. 2021. 8. 13.
[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] 2021 KAKAO INTERNSHIP ๊ฑฐ๋ฆฌ๋‘๊ธฐ ํ™•์ธํ•˜๊ธฐ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๊ฑฐ๋ฆฌ๋‘๊ธฐ ํ™•์ธํ•˜๊ธฐ [["POOOP", "OXXOX", "OPXPX", "OOXOX", "POXXP"], ["POOPX", "OXPXP", "PXXXO", "OXXXO", "OOOPP"], ["PXOPX", "OXOXP", "OXPOX", "OXXOP", "PXPOX"], ["OOOXX", "XOOOX", "OOOXX", "OXOOX", "OOOOO"], ["PXPXP", "XPXPX", "PXPXP", "XPXPX", "PXPXP"]] [1, 0, 1, 1, 1] programmers.co.kr Solution 1. ์‘์‹œ์ž์˜ ์œ„์น˜๋ฅผ ํŒŒ์•…ํ•œ๋‹ค. func getSeatLocation(places:[String],xMap:inout [[String]],applicants:in.. 2021. 8. 7.
[Swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์œ„ํด๋ฆฌ ์ฑŒ๋ฆฐ์ง€ 1์ฃผ์ฐจ ๋ถ€์กฑํ•œ ๊ธˆ์•ก ๊ณ„์‚ฐํ•˜๊ธฐ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - 1์ฃผ์ฐจ ์ƒˆ๋กœ ์ƒ๊ธด ๋†€์ด๊ธฐ๊ตฌ๋Š” ์ธ๊ธฐ๊ฐ€ ๋งค์šฐ ๋งŽ์•„ ์ค„์ด ๋Š์ด์งˆ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ๋†€์ด๊ธฐ๊ตฌ์˜ ์›๋ž˜ ์ด์šฉ๋ฃŒ๋Š” price์› ์ธ๋ฐ, ๋†€์ด๊ธฐ๊ตฌ๋ฅผ N ๋ฒˆ ์งธ ์ด์šฉํ•œ๋‹ค๋ฉด ์›๋ž˜ ์ด์šฉ๋ฃŒ์˜ N๋ฐฐ๋ฅผ ๋ฐ›๊ธฐ๋กœ ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ฆ‰, ์ฒ˜์Œ ์ด programmers.co.kr Solution price๋ฅผ 1๋ถ€ํ„ฐ count๊นŒ์ง€ ๋ฐฐ์ˆ˜๋ฅผ ๊ณฑํ•˜์—ฌ ๋”ํ•œ ๊ฒƒ์ด money๋ณด๋‹ค ํฌ๋‹ค๋ฉด ํ•ด๋‹น ๊ฐ€๊ฒฉ์„ ๋ฐ˜ํ™˜ํ•˜๊ณ  ์•„๋‹ˆ๋ผ๋ฉด 0์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. Source Code 2021. 8. 7.
[Swift] 2018 KAKAO BLIND RECRUITMENT [1์ฐจ] ์…”ํ‹€๋ฒ„์Šค Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - [1์ฐจ] ์…”ํ‹€๋ฒ„์Šค 10 60 45 ["23:59","23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59"] "18:00" programmers.co.kr Solution 1.timetable์„ ์ ์€ ์‹œ๊ฐ„ ์ˆœ์œผ๋กœ ์ •๋ ฌํ•œ๋‹ค. var times:[Int] = timetable.map{Int($0.split(separator: ":")[0])!*60 + Int($0.split(separator: ":")[1])!}.sorted(by: 2021. 8. 6.
[Swift] 2020 KAKAO INTERNSHIP ๋ณด์„ ์‡ผํ•‘ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๋ณด์„ ์‡ผํ•‘ ["DIA", "RUBY", "RUBY", "DIA", "DIA", "EMERALD", "SAPPHIRE", "DIA"] [3, 7] programmers.co.kr Solution ํ•ด๋‹น ๋ฌธ์ œ๋Š” ๋”•์…”๋„ˆ๋ฆฌ์™€ ํˆฌํฌ์ธํŠธ๋กœ ํ’€์–ด์•ผ ํ•˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. 1.Set๋ฅผ ์ด์šฉํ•ด ๋ชจ๋“  ๋ณด์„์˜ ๊ฐœ์ˆ˜๋ฅผ ์„ธ์ค๋‹ˆ๋‹ค. Set(gems)์˜ ๊ฐœ์ˆ˜๋ฅผ ์„ธ์ค๋‹ˆ๋‹ค. 2. ํฌ์ธํ„ฐ ๋‘ ๊ฐœ(First,Last)๋ฅผ ์ฒซ๋ฒˆ์งธ๋กœ ์„ธํŒ…ํ•ด์ค๋‹ˆ๋‹ค. 3. ๋”•์…”๋„ˆ๋ฆฌ๋ฅผ ์ด์šฉํ•ด ๋ณด์„์„ ์ €์žฅํ•ด์ค๋‹ˆ๋‹ค. ๋ณด์„์˜ ์ด๋ฆ„์„ key๊ฐ’์œผ๋กœ ๋ณด์„์˜ ์œ„์น˜๋ฅผ value๊ฐ’์œผ๋กœ ์ €์žฅํ•ด์ค๋‹ˆ๋‹ค. ex) ["DIA":[0,3,4,7],"RUBY":[1,2],"EMERALD":[5]] 4.๋ชจ๋“  ๋ณด์„์ด ์žˆ๋Š”์ง€ ์—†๋Š”์ง€ ํ™•์ธ ํ›„ ํฌ์ธํ„ฐ๋ฅผ ์ด๋™ํ•ด์ค๋‹ˆ๋‹ค. ๋ชจ๋“  .. 2021. 8. 4.
[Swift] 2020 KAKAO BLIND RECRUITMENT ๋ธ”๋ก ์ด๋™ํ•˜๊ธฐ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๋ธ”๋ก ์ด๋™ํ•˜๊ธฐ [[0, 0, 0, 1, 1],[0, 0, 0, 1, 0],[0, 1, 0, 1, 1],[1, 1, 0, 0, 1],[0, 0, 0, 0, 0]] 7 programmers.co.kr Solution ํ•ด๋‹น ๋ฌธ์ œ๋Š” BFS๋กœ ํ’€์–ด์•ผํ•˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. 1. ํ˜„์žฌ ์œ„์น˜, ์›€์ง์ผ ๋ช…๋ น, ๋ฐฉํ–ฅ์„ ์ดˆ๊ธฐํ™”ํ•ด์ค๋‹ˆ๋‹ค. struct Current { var x:Int,y:Int,d:Direction,count:Int,past:Command } enum Command:CaseIterable { case up,down,left,right,rotateClockwise,rotateAntiClockwise,rotateClockwise2,rotateAntiClockwise2 } enum D.. 2021. 8. 3.
[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.
728x90
๋ฐ˜์‘ํ˜•