์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- ๋ฌธ์์ด
- ์ฝํ
- ๋ฐฑํธ๋ํน
- ์ ํด๋ฆฌ๋ ํธ์ ๋ฒ
- ๋ฐฑ์ค
- SwiftUI
- ๋นํธ์ฐ์ฐ์
- ํ๋ก๊ทธ๋๋จธ์ค
- ๋ธ๋ฃจํธํฌ์ค
- ์คํ
- ios
- ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ
- Swift
- ๋์ ํฉ
- ์ฝ๋ฉํ ์คํธ
- ์ด์งํ์
- Queue
- WebView
- BFS
- WebApp
- ์๊ณ ๋ฆฌ์ฆ
- ๋ถํ ํ์
- dp
- ๋ถํ ์ ๋ณต
- ๋ธ๋ฃจํธํฌ์ค ์๊ณ ๋ฆฌ์ฆ
- dfs
- ๋ถํ ์ ๋ณต
- ์์
Archives
- Today
- Total
MUKER_DEV with iOS
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ๊ตฌ์ฌ์ ๋๋๋ ๊ฒฝ์ฐ์ ์ ๋ณธ๋ฌธ
๐ค ์๊ณ ๋ฆฌ์ฆ/programmers
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ๊ตฌ์ฌ์ ๋๋๋ ๊ฒฝ์ฐ์ ์
MUKER 2022. 12. 22. 16:24
๋ฌธ์ ํ์ด๋ฅผ ์ง๊ด์ ์ผ๋ก ์ดํดํ ์ ์๋๋ก ๊ณ ์ฐจํจ์๋ฅผ ์ฌ์ฉํ์ง ์์ ํ์ด์
๊ณ ์ฐจํจ์๋ฅผ ์ฌ์ฉํ ํ์ด๋ก ๋๋์ด ๊ณต๋ถํ๊ณ ์์ต๋๋ค.
์ฒ์ ์ ์ถํ๋ ํ์ด(์ค๋ต ์ฃผ์!)
func solution(_ balls:Int, _ share:Int) -> Int {
func fac(_ n: Int) -> Int {
return (1...n).reduce(1,*)
}
return fac(balls) / fac(balls-share) * fac(share)
}
- ํฉํ ๋ฆฌ์ผ ํจ์๋ฅผ ๋ง๋ค์ด์ ๊ณต์๋๋ก ๋์ ํ์ง๋ง
- ๊ฝค ๋ง์ ๋ฌธ์ ์์ ์ค๋ฅ๊ฐ ๋์๋ค.
- ์ด์ ๋ ๊ณ์ฐ์ค์ ๊ฐ์ด ๋์ณ์ ๊ทธ๋ฐ ๊ฑฐ ๊ฐ๋ค. (์ ํํ์ง ์์)
- ์ฌ๋ฌ ํ์ด ์ฌ๋ก๋ฅผ ๋ณด๊ณ ๋ด ์๋๋ก ๊ณ ์ณ๋ดค๋ค.
์์ ํด์ ํต๊ณผํ ํ์ด
import Foundation
func solution(_ balls:Int, _ share:Int) -> Int {
guard balls != share else { return 1 }
func fac(_ n: Int) -> Double {
return Double((1...n).reduce(1.0){ Double($0) * Double($1) })
}
return Int(round(fac(balls) / fac(share) / fac(balls-share)))
}
- balls์ share์ ์๊ฐ ๊ฐ์ ๋๋ ๊ฒฝ์ฐ์ ์๊ฐ 1์ด๋ guard๋ฌธ์ผ๋ก return์ ๋นผ์คฌ๋ค.
- ํฉํ ๋ฆฌ์ผ ํจ์๋ฅผ ์น Double๋ก ๋ฐ๊ฟ์คฌ๋ค. Double์ด ํํ ๋ฒ์๊ฐ ๋ ํฐ๊ฐ..? ๊ณต๋ถ ์ข ํด๋ด์ผ๊ฒ ๋ค.
- return ๊ฐ์ Int๋ก ๋ฐ๊พธ๊ธฐ์ ์ round๋ก ์์์ ์ ๋ฐ์ฌ๋ฆผํ๋ค.
- n! / (n-m)! * m! ๊ณต์์ n! / m! / (n-m)!๋ก ๋ฐ๊ฟ์คฌ๋ค.
- ์ด๋ ๊ฒ ๋ฐ๊พธ๋ ๋ฌธ์ ๋ฅผ ๋ชจ๋ ํต๊ณผํ์ง๋ง ๊ทผ๋ณธ์ ์ธ ๋ฌธ์ ํด๊ฒฐ์ ์ํด ์ข ๋ ์ ๊ทผํด๋ด์ผ ํ ๋ฏํ๋ค.
- core dump ์๋ฌ ๋๋ฌด ์ซ๋ค.
'๐ค ์๊ณ ๋ฆฌ์ฆ > programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[swift] ํ๋ก๊ทธ๋๋จธ์ค - 2์ฐจ์์ผ๋ก ๋ง๋ค๊ธฐ (0) | 2022.12.23 |
---|---|
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ํฉํ ๋ฆฌ์ผ (0) | 2022.12.23 |
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ์ง๋ฃ์์ ์ ํ๊ธฐ (0) | 2022.12.22 |
[Swift] Programmers_Lv1 ์ฝ์์ ํฉ (1) | 2022.12.22 |
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ํ์ค๋ ์ (0) | 2022.12.22 |