반응형
링크
https://www.acmicpc.net/problem/14490
풀이
동아리 선배를 문제에서 만날 수 있어서 좋았던 문제입니다.
n:m 받는 방법 -> scanf("%d:%d", &n, &m);
gcd 함수를 정의해서 최대공약수를 구해줍니다. (유클리드 알고리즘)
n과 m을 최대공약수로 나눈 수를 출력하면 됩니다.
코드
//14490_백대열
#include <cstdio>
#include <algorithm>
using namespace std;
int n, m, res;
int gcd(int a, int b) {
if (b == 0) return a;
else return gcd(b, a%b);
}
int main() {
scanf("%d:%d", &n, &m);
res = gcd(n, m);
printf("%d:%d\n", n / res, m / res);
return 0;
}
반응형
'PS > BOJ' 카테고리의 다른 글
[백준 BOJ] 3052 나머지 (0) | 2019.08.12 |
---|---|
[백준 BOJ] 10757 큰 수 A+B (0) | 2019.08.12 |
[백준 BOJ][deque] 2164 카드2 (0) | 2019.08.11 |
[백준 BOJ] 2312 수 복원하기 (0) | 2019.08.11 |
[백준 BOJ] 1074 Z (0) | 2019.08.11 |