Develop/백준 (Cpp)
[백준] 2609번 : 최대공약수와 최소공배수 (C++)
Tarra
2023. 2. 3. 20:30
10984번: 내 학점을 구해줘
문제 )
두 정수 a와 b 최소공배수는 두 수의 공통된 배수 중 가장 작은 수이고, 최대공약수는 두 수의 공통된 약수중 가장 큰 수이다.
a와 b가 주어졌을 때, 최소공배수와 최대공약수를 구하는 프로그램을 작성하시오.
입력 :
첫째 줄에 테스트 케이스의 개수 T(1<=T<=1,000)가 주어진다. 각 테스트 케이스는 두 정수 a와 b로 이루어져 있고, 공백으로 구분되어 있다. (1 <= a,b <= 1,000)
출력 :
각 테스트 케이스에 대해 최소공배수와 최대공약수를 차례대로 출력한다.
풀이)
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
29
30
31
|
#include <iostream>
using namespace std;
int main()
{
// 다른 C++ 답안보다 속도가 느려서 입출력이 문제인가 싶어 넣어봄.
cin.tie(NULL);
cin.sync_with_stdio(false);
int n;
cin >> n;
for (int i = 0; i < n; i++) {
int GCD = 1;
int a, b;
cin >> a >> b;
for (int j = 1; j <= a; j++) {
if (a % j == 0 && b % j == 0) {
GCD = j;
}
}
int LCM = a * b / GCD;
cout << LCM << " " << GCD << "\n";
}
return 0;
}
|
cs |
출처 : https://www.acmicpc.net/problem/2702
2702번: 초6 수학
첫째 줄에 테스트 케이스의 개수 T(1<=T<=1,000)가 주어진다. 각 테스트 케이스는 두 정수 a와 b로 이루어져 있고, 공백으로 구분되어 있다. (1 <= a,b <= 1,000)
www.acmicpc.net