Problem
Solution
์ด์ง๋ณํํ ์๋ฅผ ์ ์ฅํ ๋ณ์ -> var radix = s
0์ ๊ฐฏ์๋ฅผ ์ ์ฅํ ๋ณ์ - > var zeroCount = 0
ํ์ฐจ๋ฅผ ์ ์ฅํ ๋ณ์ -> var turn = 0
while๋ฌธ์ ์ด์ฉํด ์ด์ง๋ณํํ ์(radix)๊ฐ 1์ด ๋ ๋๊น์ง ๋ฐ๋ณตํด์ค๋๋ค. -> while radix != "1" {
0์ ์ ๊ฑฐํ ์๋ ๊ณง ์ ์ฒด๋ฌธ์์์ 1๋ง ํํฐ๋งํ ๊ธ์์ด๋ฏ๋ก filter๋ฉ์๋๋ฅผ ์ฌ์ฉํด 1๋ง ๊ฑธ๋ฌ์ค๋๋ค.
-> let one = radix.filter{ $0 == "1"}
์ ์ฒด๋ฌธ์์ ๊ธธ์ด์์ 1์ ๊ฐฏ์๋งํผ ๋บ ๊ฒ์ด 0์ ๊ฐฏ์์ด๋ฏ๋ก ๋บ ์ซ์๋ฅผ zeroCount์ ๋ํด์ค๋๋ค.
1์ ๊ฐฏ์๋ฅผ ์ด์ง๋ณํํด์ค๋๋ค. - > radix = String(one.count,radix:2)
๊ทธ๋ฆฌ๊ณ ํ์ฐจ๋ฅผ ๋๋ ค์ค๋๋ค, - > turn += 1
๋ง์ง๋ง์ผ๋ก 1์ด ๋์๋ค๋ฉด ํ์ฐจ์ 0์ ๊ฐฏ์๋ฅผ ๋ฐํํด์ค๋๋ค. -> return [turn,zeroCount]
Source Code
'๐ Problem Solution > Programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
2018 KAKAO BLIND RECRUITMENT [3์ฐจ] ํ์ผ๋ช ์ ๋ ฌ Swift (0) | 2020.11.19 |
---|---|
2018 KAKAO BLIND RECRUITMENT [3์ฐจ] ์์ถ Swift (0) | 2020.11.16 |
2018 KAKAO BLIND RECRUITMENT[1์ฐจ] ํ๋ ์ฆ4๋ธ๋ก Swift (0) | 2020.11.14 |
ํ๋ก๊ทธ๋๋จธ์ค ์ง์ง์ด ์ ๊ฑฐํ๊ธฐ Swift (0) | 2020.11.12 |
ํ๋ก๊ทธ๋๋จธ์ค ์๊ฐ ์ฝ๋ ์ฑ๋ฆฐ์ง 1 ์ฟผ๋์์ถ ํ ๊ฐ์ ์ธ๊ธฐ Swift (0) | 2020.11.05 |
๋๊ธ