[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] 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.