๋ฌธ์ ์ค๋ช
๋ ์๋ฅผ ์ ๋ ฅ๋ฐ์ ๋ ์์ ์ต๋๊ณต์ฝ์์ ์ต์๊ณต๋ฐฐ์๋ฅผ ๋ฐํํ๋ ํจ์, solution์ ์์ฑํด ๋ณด์ธ์. ๋ฐฐ์ด์ ๋งจ ์์ ์ต๋๊ณต์ฝ์, ๊ทธ๋ค์ ์ต์๊ณต๋ฐฐ์๋ฅผ ๋ฃ์ด ๋ฐํํ๋ฉด ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด ๋ ์ 3, 12์ ์ต๋๊ณต์ฝ์๋ 3, ์ต์๊ณต๋ฐฐ์๋ 12์ด๋ฏ๋ก solution(3, 12)๋ [3, 12]๋ฅผ ๋ฐํํด์ผ ํฉ๋๋ค.
์ ํ ์ฌํญ
- ๋ ์๋ 1์ด์ 1000000์ดํ์ ์์ฐ์์ ๋๋ค.
์ ์ถ๋ ฅ ์
n | m | return |
3 | 12 | [3, 12] |
2 | 5 | [1, 10] |
ํ์ด:
์ต๋๊ณต์ฝ์๋ฅผ ๊ตฌํ๋ ๋ฒ
n๊ณผ m์ค ์์ ์ ๊น์ง ๋ฐ๋ณตํ๊ฒ ํ๊ณ ๋ง์ฝ n๊ณผ m ๋ ๋ค ๋๋ด์ ๋ 0์ด ๋๋ ์๊ฐ ์์ผ๋ฉด max๋ผ๋ ๋ณ์๋ฅผ ๋ฐ๊ฟ์ค๋ค.
์ต์๊ณต๋ฐฐ์๋ฅผ ๊ตฌํ๋ ๋ฒ
n๊ณผm์ค ์์ ์๋ก n์ ๋ฐฐ์๋ฅผ ๋๋ด์ ๋ ๋๋จธ์ง๊ฐ 0์ด๋ฉด ๋ฐ๋ณต์ ์ค๋จํ๊ณ min๋ณ์์ n์ ๋ฐฐ์๋ฅผ ๋ฃ์ด์ค๋ค. ์๋๋ฉด ์ฐจ๋ก๋ก 1์ฉ ๋ํด์ค๋ค.
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
|
func solution(_ n:Int, _ m:Int) -> [Int] {
var max = Int()
var min = Int()
var x = 1
if n > m {
for i in 1...m{
if n%i == 0 && m%i == 0{
max = i
}
}
while n*x%m != 0{
x += 1
}
min = n*x
return [max,min]
} else {
for i in 1...n{
if n%i == 0 && m%i == 0{
max = i
}
}
while m*x%n != 0{
x += 1
}
min = m*x
return [max,min]
}
}
http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5text-decoration:none">Colored by Color Scripter
|
๋ค๋ฅธ ์ฌ๋ ํ์ด ์ค ์ข๋ค๊ณ ์๊ฐํ๋ ๊ฒ
ํ์ด: ์ต๋๊ณต์ฝ์์ ์ต์๊ณต๋ฐฐ์๋ฅผ ๊ตฌํ๋ ํจ์๋ฅผ ๊ฐ ๊ฐ ๋ง๋ค์๋ค.
์ฐ์ ์ต๋๊ณต์ฝ์๋ฅผ ๊ตฌํ๋ ํจ์ a๋ฅผ b๋ก ๋๋ด์ ๋ 0์ด๋ผ๋ฉด a,b์ค ์์ ์๋ฅผ ๋ฐํ ์๋๋ผ๋ฉด b์ a๋ฅผ b๋ก ๋๋ ๊ฐ์ ๋ฐ์ฌ๋ฆผํ ๊ฐ์ ๋ค์ ๋ฐ๋ณตํด๋ผ.
์ต์๊ณต๋ฐฐ์๋ฅผ ๊ตฌํ๋ ๋ฒ์ ์ต๋๊ณต์ฝ์๋ก a,b๋ฅผ ๊ณฑํ ๊ฐ์ ๋๋ ๊ฒ.
1
2
3
4
5
6
7
8
9
10
11
12
13
|
func gcd(_ a: Int, _ b: Int) -> Int {
let mod: Int = a % b
return 0 == mod ? min(a, b) : gcd(b, mod)
}
func lcm(_ a: Int, _ b: Int) -> Int {
return a * b / gcd(a, b)
}
func solution(_ n:Int, _ m:Int) -> [Int] {
return [gcd(n, m), lcm(n, m)]
}
http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5text-decoration:none">Colored by Color Scripter
|
'๐ Problem Solution > Programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก๊ทธ๋๋จธ์ค ํ๊ท ๊ตฌํ๊ธฐ Swift (0) | 2020.03.01 |
---|---|
ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ผ์ธ ์ถ์ธก Swift (0) | 2020.03.01 |
ํ๋ก๊ทธ๋๋จธ์ค ์ง์์ ํ์ Swift (0) | 2020.02.28 |
ํ๋ก๊ทธ๋๋จธ์ค ์ ์ผ ์์ ์ ์ ๊ฑฐํ๊ธฐ Swift (0) | 2020.02.28 |
ํ๋ก๊ทธ๋๋จธ์ค ์ ์ ์ ๊ณฑ๊ทผ ํ๋ณ Swift (0) | 2020.02.28 |
๋๊ธ