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

์ฝ”๋”ฉํ…Œ์ŠคํŠธ7

[Swift] 2020 KAKAO INTERNSHIP ๊ฒฝ์ฃผ๋กœ ๊ฑด์„ค Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๊ฒฝ์ฃผ๋กœ ๊ฑด์„ค [[0,0,0,0,0,0,0,1],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,0,0],[0,0,0,0,1,0,0,0],[0,0,0,1,0,0,0,1],[0,0,1,0,0,0,1,0],[0,1,0,0,0,1,0,0],[1,0,0,0,0,0,0,0]] 3800 [[0,0,1,0],[0,0,0,0],[0,1,0,1],[1,0,0,0]] 2100 [[0,0,0,0,0,0],[0,1,1,1,1,0],[0,0,1,0,0,0],[1,0,0,1,0,1],[ programmers.co.kr Solution ํ•ด๋‹น ๋ฌธ์ œ๋Š” DFS๋กœ ํ’€์–ด์•ผ ํ•˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. 1. ์ž๋™์ฐจ์™€ ์ƒํ•˜์ขŒ์šฐ ๋ฐฉํ–ฅ ๋ชจ๋ธ์„ ๋งŒ๋“ค์–ด์ค€๋‹ค. (ํ•„์ˆ˜๋Š” ์•„๋‹˜) ์ž๋™์ฐจ์— ํ•„์š”ํ•œ x,y,price,prev์™€ ์ƒ.. 2021. 8. 31.
[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 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ํ‘œ ํŽธ์ง‘ 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.
[Algorithm] ์ˆœ์—ด(Permutation)์ด๋ž€? (feat.Swift) ์•ˆ๋…•ํ•˜์„ธ์š” Foma ๐Ÿ‘Ÿ ์ž…๋‹ˆ๋‹ค! ์˜ค๋Š˜์€ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ์—์„œ ์ •๋ง ๋นˆ๋ฒˆํ•˜๊ฒŒ ์‚ฌ์šฉ๋˜๋Š” "์ˆœ์—ด"์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ฐ”๋กœ ์‹œ์ž‘ํ• ๊ฒŒ์š”! ์ˆœ์—ด์ด๋ž€? ์„œ๋กœ ๋‹ค๋ฅธ n๊ฐœ์˜ ์›์†Œ์—์„œ r๊ฐœ๋ฅผ ์ค‘๋ณต์—†์ด ๊ณจ๋ผ ์ˆœ์„œ์— ์ƒ๊ด€์žˆ๊ฒŒ ๋‚˜์—ดํ•˜๋Š” ๊ฒƒ์„ ์ด๋ฅธ๋‹ค. - ๋‚˜๋ฌด ์œ„ํ‚ค - ์‰ฝ๊ฒŒ ์„ค๋ช…ํ•˜๋ฉด ์ค„ ์„ธ์šฐ๊ธฐ์™€ ๋˜‘๊ฐ™์•„์š”. A,B,C๋ผ๋Š” ํ•™์ƒ์„ ์ค„ ์„ธ์šฐ๋Š” ๋ฐฉ๋ฒ•์€ ABC,ACB,BAC,BCA,CAB,CBA ๋“ฑ์ด ์žˆ๊ฒ ์ฃ ? ์ด ์ค‘์—์„œ 2๋ช…์˜ ํ•™์ƒ์œผ๋กœ ์ค„ ์„ธ์šฐ๋Š” ๋ฐฉ๋ฒ•์€ AB,AC,BA,BC,CA,CB ๋“ฑ์ด ์žˆ์„๊ฑฐ์—์š”. ์ฝ”๋“œ ๊ตฌํ˜„ ๊ฒฝ์šฐ์˜ ์ˆ˜๋“ค์„ ๋‹ด์„ ์ด์ค‘ ๋ฐฐ์—ด์„ ๋งŒ๋“ค์–ด์ค๋‹ˆ๋‹ค. var cases:[[Int]] = [] ๋ช‡ ๊ฐœ๋ฅผ ๋ฝ‘์„์ง€ ์ •ํ•ด์ค๋‹ˆ๋‹ค. let pickCount = 3 ๋ณธ๊ฒฉ์ ์œผ๋กœ ์ˆœ์—ด ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ค์–ด์ค๋‹ˆ๋‹ค. ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ๋Š” ์ „์ฒด ์ธ๋ฑ์Šค๊ฐ€ ๋‹ด๊ธด.. 2021. 6. 27.
[Swift] 2021 KAKAO BLIND RECRUITMENT ์นด๋“œ ์ง ๋งž์ถ”๊ธฐ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ์นด๋“œ ์ง ๋งž์ถ”๊ธฐ [[1,0,0,3],[2,0,0,0],[0,0,0,2],[3,0,1,0]] 1 0 14 [[3,0,0,2],[0,0,1,0],[0,1,0,0],[2,0,0,3]] 0 1 16 programmers.co.kr Solution ๋ชจ๋“  ์นด๋“œ๋ฅผ ๋’ค์ง‘๋Š” ์ตœ์†Œ ์กฐ์ž‘ํšŸ์ˆ˜๋ฅผ ์ฐพ์•„์•ผ ํ•˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. (BFS๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๋ฒ•๊ณผ ์ˆœ์—ด๊ตฌํ•˜๋Š” ๋ฒ•์„ ์•Œ์•„์•ผ ๊ตฌํ˜„ํ•˜๊ธฐ ์ˆ˜์›”ํ•˜์‹ค๊ฒ๋‹ˆ๋‹ค.) 1. ์นด๋“œ๋ฅผ ๋’ค์ง‘๋Š” ์ˆœ์„œ๋ฅผ ์ •ํ•˜๊ธฐ(์ˆœ์—ด ๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ• ์•Œ๊ธฐ) ๋งŒ์•ฝ 1,2,3 ์นด๋“œ๊ฐ€ ์žˆ๋‹ค๋ฉด 1 - 2 - 3, 1 - 3 - 2, 2 - 1 - 3... ๋“ฑ์œผ๋กœ ๋’ค์ง‘์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ˆœ์—ด์„ ๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์žฌ๊ท€ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ํ•ด๋‹น ํ•˜๋‚˜์”ฉ ์ˆซ์ž๋ฅผ ์ง€์›Œ๋‚˜๊ฐ€๋ฉด์„œ depth์— ์ €์žฅํ•ด์ค๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์นด๋“œ๋Š” ๊ฐ ๊ฐ .. 2021. 4. 27.
[Swift] 2019 ์นด์นด์˜ค ๊ฐœ๋ฐœ์ž ๊ฒจ์šธ ์ธํ„ด์‹ญ ํฌ๋ ˆ์ธ ์ธํ˜•๋ฝ‘๊ธฐ(Youtube ํ’€์ดํฌํ•จ) Youtube ํ’€์ด Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ํฌ๋ ˆ์ธ ์ธํ˜•๋ฝ‘๊ธฐ ๊ฒŒ์ž„ [[0,0,0,0,0],[0,0,1,0,3],[0,2,5,0,1],[4,2,4,4,2],[3,5,1,3,1]] [1,5,3,5,1,2,1,4] 4 programmers.co.kr Solution board๋ฅผ ๊ฐ index์— ์žˆ๋Š” ์ˆซ์ž๋“ค๋กœ ๊ตฌ์„ฑํ•ด์„œ array ๋ฐฐ์—ด์„ ๋งŒ๋“ค์–ด์ค€๋‹ค. array์—์„œ 0์€ ์—†์• ์ค๋‹ˆ๋‹ค. ๋ฝ‘์€ ์ˆซ์ž๋“ค์„ ๋‹ด์„ basket ๋ฐฐ์—ด์„ ๋งŒ๋“ค์–ด์ค๋‹ˆ๋‹ค. moves์•ˆ์— ์žˆ๋Š” ์ˆซ์ž๋“ค์€ array index์ด๋ฏ€๋กœ array์˜ index๋ฒˆ์งธ์—์„œ ์ฒซ๋ฒˆ์งธ ์ˆซ์ž๋ฅผ ์ œ๊ฑฐํ•ด์ค๋‹ˆ๋‹ค. array์˜ ๋งจ ์ฒซ๋ฒˆ์งธ ์ˆซ์ž์™€ basket์˜ ๋งจ ๋งˆ์ง€๋ง‰ ์ˆซ์ž๋ฅผ ๋น„๊ตํ•˜์—ฌ ๋งŒ์•ฝ ๊ฐ™๋‹ค๋ฉด basket์˜ ๋งจ ๋งˆ์ง€๋ง‰ ์ˆซ์ž๋ฅผ ์ œ๊ฑฐํ•ด์ฃผ๊ณ  count๋ฅผ +2 ํ•ด์ค๋‹ˆ๋‹ค. So.. 2021. 3. 26.
[Swift] 2021 KAKAO BLIND RECRUITMENT ์ˆœ์œ„ ๊ฒ€์ƒ‰ Foma's ํ’€์ด ๋ชจ๋“  ์ง€์›์ž๋“ค์€ ์–ธ์–ด, ์ง๊ตฐ, ๊ฒฝ๋ ฅ, ์†Œ์šธํ‘ธ๋“œ, ์ ์ˆ˜์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ •๋ณด๋ฅผ ๊ฐ–๊ธฐ ์œ„ํ•ด์„œ ๋„์–ด์“ฐ๊ธฐ ๊ธฐ์ค€์œผ๋กœ ๋‚˜๋ˆ„์–ด์„œ ๋ฐฐ์—ด์— ๋„ฃ์–ด์ค๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด 0๋ฒˆ์งธ ์–ธ์–ด 1๋ฒˆ์งธ ์ง๊ตฐ 2๋ฒˆ์งธ ๊ฒฝ๋ ฅ 2๋ฒˆ์งธ ์†Œ์šธํ‘ธ๋“œ 4๋ฒˆ์งธ ์ ์ˆ˜๊ฐ€ ๋  ๊ฒƒ ์ž…๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ๋‚˜๋ˆ„์–ด์ง„ ์ง€์›์ž๋“ค์„ ์ ์ˆ˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•ด์ค๋‹ˆ๋‹ค. ๊ทธ ๋‹ค์Œ์œผ๋ก  ์ œ๊ฐ€ ํ•ต์‹ฌ ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋Š” ์ฒซ๋ฒˆ์งธ์ž…๋‹ˆ๋‹ค. (๋„์ €ํžˆ ๋ชจ๋ฅด๊ฒ ์–ด์„œ ์นด์นด์˜ค ๋ฌธ์ œํ•ด์„ค์„ ์ฐธ๊ณ ํ–ˆ์Šต๋‹ˆ๋‹ค.....) ์ง€์›์ž๋“ค์˜ 4๊ฐ€์ง€ ์ •๋ณด๋กœ ๋ชจ๋“  ์ผ€์ด์Šค๋“ค์„ 16๊ฐ€์ง€๋ฅผ ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด๋ฒ„๋ฆฌ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด ์ž๋ฐ” ๋ฐฑ์—”๋“œ ์‹œ๋‹ˆ์–ด ํ”ผ์ž๋ผ๋ฉด ์ •๋ณด์—†์Œ ์ž๋ฐ” ์ž๋ฐ” ๋ฐฑ์—”๋“œ ์ž๋ฐ” ์‹œ๋‹ˆ์–ด ์ž๋ฐ” ํ”ผ์ž ์ž๋ฐ” ๋ฐฑ์—”๋“œ ์‹œ๋‹ˆ์–ด ์ž๋ฐ” ๋ฐฑ์—”๋“œ ํ”ผ์ž ์ž๋ฐ” ์‹œ๋‹ˆ์–ด ํ”ผ์ž ์ž๋ฐ” ๋ฐฑ์—”๋“œ ์‹œ๋‹ˆ์–ด ํ”ผ์ž ๋ฐฑ์—”๋“œ ๋ฐฑ์—”.. 2021. 3. 18.
728x90
๋ฐ˜์‘ํ˜•