๐ฉ๐ป๐พ
[๋ฐฑ์ค/Python] 1934๋ฒ ์ต์๊ณต๋ฐฐ์ ๋ณธ๋ฌธ
1๏ธโฃ๋ฌธ์ ์ค๋ช
๋ ์์ฐ์ A์ B์ ๋ํด์, A์ ๋ฐฐ์์ด๋ฉด์ B์ ๋ฐฐ์์ธ ์์ฐ์๋ฅผ A์ B์ ๊ณต๋ฐฐ์๋ผ๊ณ ํ๋ค. ์ด๋ฐ ๊ณต๋ฐฐ์ ์ค์์ ๊ฐ์ฅ ์์ ์๋ฅผ ์ต์๊ณต๋ฐฐ์๋ผ๊ณ ํ๋ค. ์๋ฅผ ๋ค์ด, 6๊ณผ 15์ ๊ณต๋ฐฐ์๋ 30, 60, 90๋ฑ์ด ์์ผ๋ฉฐ, ์ต์ ๊ณต๋ฐฐ์๋ 30์ด๋ค.
๋ ์์ฐ์ A์ B๊ฐ ์ฃผ์ด์ก์ ๋, A์ B์ ์ต์๊ณต๋ฐฐ์๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
2๏ธโฃ์ ๋ ฅ
์ฒซ์งธ ์ค์ ํ ์คํธ ์ผ์ด์ค์ ๊ฐ์ T(1 ≤ T ≤ 1,000)๊ฐ ์ฃผ์ด์ง๋ค. ๋์งธ ์ค๋ถํฐ T๊ฐ์ ์ค์ ๊ฑธ์ณ์ A์ B๊ฐ ์ฃผ์ด์ง๋ค. (1 ≤ A, B ≤ 45,000)
3๏ธโฃ์ถ๋ ฅ
์ฒซ์งธ ์ค๋ถํฐ T๊ฐ์ ์ค์ A์ B์ ์ต์๊ณต๋ฐฐ์๋ฅผ ์ ๋ ฅ๋ฐ์ ์์๋๋ก ํ ์ค์ ํ๋์ฉ ์ถ๋ ฅํ๋ค.
๐ฉ๐ป๐ป์์ฑํ ์ฝ๋
def GCD(a, b):
if b == 0:
return a
else:
return GCD(b, a % b)
t = int(input())
for i in range(t):
a, b = map(int, input().split())
result = a * b / GCD(a, b)
print(int(result))
๐ก์ฝ๋ ์ค๋ช
์ด ๋ฌธ์ ์์ ์ํ๋ ์ต์๊ณต๋ฐฐ์๋ ๋ ' a * b / ์ต๋๊ณต์ฝ์ ' ๋ฅผ ๊ณ์ฐํด์ ๊ตฌํ ์ ์๋ค.
๋ ์์ ์ต๋๊ณต์ฝ์๋ import math๋ฅผ ํตํด math.gcd()๋ฅผ ์ฌ์ฉํ์ฌ ๋น ๋ฅด๊ฒ ๊ตฌํ ์ ์์ผ๋, ์ ํด๋ฆฌ๋ ํธ์ ๋ฒ( = ๋ ์์ ์ต๋ ๊ณต์ฝ์๋ฅผ ๊ตฌํ๋ ์๊ณ ๋ฆฌ์ฆ)์ ์ฌ์ฉํด์ ๊ตฌํด๋ดค๋ค.
์๋ ์์๋ฅผ ์ฐธ๊ณ ํ์ฌ ์ ํด๋ฆฌ๋ ํธ์ ๋ฒ์ ์๋ฆฌ๋ฅผ ์ดํดํด๋ณด์๋ฉด,
์ฃผ์ด์ง ๋ ๊ฐ์ ๋๋์ด ๋๋จธ์ง๋ฅผ ๊ตฌํ๋ ์ฐ์ฐ์ ํ ๋ค์, ๋ค์ ์ฐ์ฐ์์๋ ๋๋๋ ์์๋ ์๋ฅผ ํฐ ์๋ก, ๊ตฌํด์ง ๋๋จธ์ง๋ฅผ ์์ ์๋ก ์ค์ ํ์ฌ ๋ค์ ๋๋จธ์ง๋ฅผ ๊ตฌํ๋ ์ฐ์ฐ์ ํ๋ค. ์ด ๊ณผ์ ์ ๋ฐ๋ณตํ์ฌ ๋๋จธ์ง๊ฐ 0์ด ๋์ค๋ฉด, ํด๋น ์ฐ์ฐ์์ ๋๋๋ ์๋ก ์ค์ ๋ ์๊ฐ ์ต๋๊ณต์ฝ์๊ฐ ๋ฉ๋๋ค.
์ ์ฝ๋์์ ํจ์ GCD()๊ฐ ์ฌ๊ท ํํ๋ฅผ ํตํด ์ ํด๋ฆฌ๋ ํธ์ ๋ฒ์ ๊ตฌํํ ๊ฒ์ด๋ค.
'์ฝ๋ฉํ ์คํธ > ๋ฐฑ์ค(BOJ)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค/Python] 18352๋ฒ ํน์ ๊ฑฐ๋ฆฌ์ ๋์ ์ฐพ๊ธฐ (0) | 2023.03.21 |
---|---|
[๋ฐฑ์ค/Python] 1033๋ฒ ์นตํ ์ผ (0) | 2023.03.16 |
[๋ฐฑ์ค/Python] 1456๋ฒ ๊ฑฐ์ ์์ (0) | 2023.03.15 |
[๋ฐฑ์ค/Python] 11689๋ฒ GCD(n, k) = 1 (0) | 2023.03.14 |
[๋ฐฑ์ค/Python] 1747๋ฒ ์์ & ํฐ๋ฆฐ๋๋กฌ ์ ์ค์์ ์ต์๊ฐ ์ฐพ๊ธฐ (0) | 2023.03.14 |