본문 바로가기

Algorithm/Math

(C++) - 백준(BOJ) 14490 : 백대열

반응형

https://www.acmicpc.net/problem/14490

 

14490번: 백대열

n과 m이 :을 사이에 두고 주어진다. (1 ≤ n, m ≤ 100,000,000)

www.acmicpc.net

최대공약수를 구하는 문제였습니다.

📕 풀이방법

📔 입력 및 초기화

n, m을 입력받습니다.

📔 풀이과정

n, m에 대해 유클리드 호제법으로 gcd를 구합니다.

📔 정답출력

n을 gcd로, m을 gcd로 나눈 값을 형식에 맞게 출력합니다.


📕 Code

#include <bits/stdc++.h>
using namespace std;
int n, m, GCD;

int gcd(int a, int b){
  if(!b) return a;
  return gcd(b, a%b);
}

int main(){
  scanf("%d:%d",&n,&m);
  GCD = gcd(n, m);
  cout << n / GCD << ":" << m / GCD;
}

*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.