๐Ÿ’  Cpp/[BOJ] ๋‹จ๊ณ„๋ณ„๋กœ ํ’€์–ด๋ณด๊ธฐ

[BOJ][C++] ๋ฐฑ์ค€ 1934๋ฒˆ: ์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜ (Bronze I)

์„ ๋‹ฌ 2025. 1. 13. 05:29
๋ฐ˜์‘ํ˜•

๋ฌธ์ œ

๋‘ ์ž์—ฐ์ˆ˜ A์™€ B์— ๋Œ€ํ•ด์„œ, A์˜ ๋ฐฐ์ˆ˜์ด๋ฉด์„œ B์˜ ๋ฐฐ์ˆ˜์ธ ์ž์—ฐ์ˆ˜๋ฅผ A์™€ B์˜ ๊ณต๋ฐฐ์ˆ˜๋ผ๊ณ  ํ•œ๋‹ค. ์ด๋Ÿฐ ๊ณต๋ฐฐ์ˆ˜ ์ค‘์—์„œ ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜๋ฅผ ์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜๋ผ๊ณ  ํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, 6๊ณผ 15์˜ ๊ณต๋ฐฐ์ˆ˜๋Š” 30, 60, 90๋“ฑ์ด ์žˆ์œผ๋ฉฐ, ์ตœ์†Œ ๊ณต๋ฐฐ์ˆ˜๋Š” 30์ด๋‹ค.
๋‘ ์ž์—ฐ์ˆ˜ A์™€ B๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, A์™€ B์˜ ์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

์ž…๋ ฅ

์ฒซ์งธ ์ค„์— ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค์˜ ๊ฐœ์ˆ˜ T(1 ≤ T ≤ 1,000)๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ T๊ฐœ์˜ ์ค„์— ๊ฑธ์ณ์„œ A์™€ B๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (1 ≤ A, B ≤ 45,000)

์ถœ๋ ฅ

์ฒซ์งธ ์ค„๋ถ€ํ„ฐ T๊ฐœ์˜ ์ค„์— A์™€ B์˜ ์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์€ ์ˆœ์„œ๋Œ€๋กœ ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ์ถœ๋ ฅํ•œ๋‹ค.

 

ํ’€์ด

// ํ’€์ด : https://whkakrkr.tistory.com

#include <iostream>
#include <vector>
#include <set>

using namespace std;

int getGcp(int a, int b) {
    return a==0 ? b : getGcp(b%a, a);
}

int main() {
    ios_base::sync_with_stdio(false);
	cout.tie(NULL);
	cin.tie(NULL);
	
	int t;
	cin >> t;
	while(t--) {
	    int a,b;
	    cin >> a >> b;
	    
	    int tmp;
	    if(a<b) {
	        tmp = a;
	        a = b;
	        b = tmp;
	    }
	    
	    int gcp =  getGcp(a, b);
	    int lcm = (a * b / gcp);
	    
	    cout << lcm << "\n";
	}
    
    return 0;
}
๋ฐ˜์‘ํ˜•