N๊ฐ์ ์ต์๊ณต๋ฐฐ์ - ํ๋ก๊ทธ๋๋จธ์ค(Swift)
2022. 10. 10. 11:45ใํ๋ก๊ทธ๋๋จธ์ค-Swift
N๊ฐ์ ์ต์๊ณต๋ฐฐ์ - ํ๋ก๊ทธ๋๋จธ์ค(Swift)
๋ฌธ์ ์ค๋ช
https://school.programmers.co.kr/learn/courses/30/lessons/12953
๋์ ํ์ด
๋จผ์ ๋งจ ์ ๋ ์ซ์์ ์ต์๊ณต๋ฐฐ์๋ฅผ ๊ตฌํ๊ณ ๊ทธ ๋ค์ ์ซ์์์ ์ต์๊ณต๋ฐฐ์๋ฅผ ๊ตฌํด์ ์ด๋ฅผ ๋ฐ๋ณตํ์ฌ ํด๊ฒฐํ๋ ๋ฌธ์ ์ด๋ค.
Solution๋ถ๋ถ์์ for๋ฌธ์ ํตํด ์ด๋ฅผ ๋์ ํ๋๋ฐ ๋ค๋ฅธ ์ฌ๋์ ํ์ด๋ฅผ ๋ณด๋ reduce๋ก ๊น๋ํ๊ฒ ํด๊ฒฐํ๋ ๊ฒ์ ๋ณผ ์ ์์๋ค.
reduce๋ ๊ฐ์ ๋ํ๊ธฐ๋ง ํ๋ ๊ฒ์ด ์๋ ํน์ ํ ๋ก์ง์ ์ ์ฉํ์ฌ ๋์ ์ํค๋ ๊ฒ์ด ๋ณธ์ง์ด๊ธฐ์ ์ ์ฐ๋ฉด ์ข์ ๊ฒ ๊ฐ๋ค.
func gcd(_ a: Int, _ b: Int) -> Int {
if b == 0 {
return a
} else {
return gcd(b, a%b)
}
}
func lcm(_ a: Int, _ b: Int) -> Int {
return (a*b) / gcd(a, b)
}
func solution(_ arr:[Int]) -> Int {
arr.reduce(1){ lcm($0, $1)}
}
'ํ๋ก๊ทธ๋๋จธ์ค-Swift' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก๊ทธ๋๋จธ์ค - ์ ํ์ ์๊ฐ ์ด๋(Swift) (0) | 2022.10.11 |
---|---|
๋ฉ๋ฆฌ ๋ฐ๊ธฐ - ํ๋ก๊ทธ๋๋จธ์ค(Swift) (0) | 2022.10.11 |
ํ๋ก๊ทธ๋๋จธ์ค - ์ง์ง์ด ์ ๊ฑฐํ๊ธฐ(Swift) (0) | 2022.10.10 |
ํ๋ก๊ทธ๋๋จธ์ค - ์นดํซ(Swift) (0) | 2022.10.09 |
ํ๋ก๊ทธ๋๋จธ์ค - ๋ค์ ํฐ ์ซ์(Swift) (0) | 2022.10.09 |