๐Ÿ‘ฉ๐Ÿป‍๐ŸŒพ

[๋ฐฑ์ค€/Python] 1934๋ฒˆ ์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜ ๋ณธ๋ฌธ

์ฝ”๋”ฉํ…Œ์ŠคํŠธ/๋ฐฑ์ค€(BOJ)

[๋ฐฑ์ค€/Python] 1934๋ฒˆ ์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜

์ฅฌ์Šค์ด 2023. 3. 15. 14:20
728x90

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()๊ฐ€ ์žฌ๊ท€ ํ˜•ํƒœ๋ฅผ ํ†ตํ•ด ์œ ํด๋ฆฌ๋“œ ํ˜ธ์ œ๋ฒ•์„ ๊ตฌํ˜„ํ•œ ๊ฒƒ์ด๋‹ค.

728x90
Comments