문제 링크
https://programmers.co.kr/learn/courses/30/lessons/12940
C++ 풀이
#include <string>
#include <vector>
using namespace std;
int findGCD(int &n, int &m) {
for (int i = ((n < m) ? n : m); i >= 1; i--) {
if ((n % i == 0) && (m % i == 0))
return i;
}
return 1;
}
int findLCM(int &n, int &m) {
int i = (n < m) ? m : n;
while ((i % n != 0) || (i % m != 0))
i++;
return i;
}
vector<int> solution(int n, int m) {
vector<int> answer;
answer.push_back(findGCD(n, m)); //최대공약수 찾기
answer.push_back(findLCM(n, m)); //최소공배수 찾기
return answer;
}
반응형
'알고리즘 · 코딩' 카테고리의 다른 글
[프로그래머스] 숫자의 표현 (0) | 2020.05.07 |
---|---|
[프로그래머스] 정수 내림차순으로 배치하기 (0) | 2020.05.06 |
[프로그래머스] 소수 찾기 (0) | 2020.05.05 |
[프로그래머스] 피보나치 수 (0) | 2020.04.30 |
[프로그래머스] 콜라츠 추측 (0) | 2020.04.27 |