알고리즘 문제풀이
[백준 2609] 알고리즘 27일차 : 최대공약수와 최소공배수
SiO2whocode
2020. 7. 21. 16:08
728x90
https://www.acmicpc.net/problem/2609
2609번: 최대공약수와 최소공배수
첫째 줄에는 입력으로 주어진 두 수의 최대공약수를, 둘째 줄에는 입력으로 주어진 두 수의 최소 공배수를 출력한다.
www.acmicpc.net
수학3 C++
리터럴리 두 정수의 최대공약수랑 최소공배수를 출력하는 문제다.
최대공약수는 둘 중 작은 수부터 하나씩 감소시키면서 검사하고(이렇게 안하고 좀 더 효율적으로 할 수 있겠지만 통과는 된다)
최소공배수는 둘 중 작은 수부터 그의 배수를 검사한다. 끝
오늘 문제는 폰코딩했다. ios문자랑 아스키코드가 안맞는건지 “랑 - - 이 코드로 인식이 안돼서 계속 컴파일 에러가 떴었다..
이전에 풀었던 코드에서 가져와서 고쳐서 냈는데 이번엔 걍 틀렸습니다.;
해결못하고 집에와서 돌려보니까 최소공배수 출력을 min*n을 해야되는데 n만 한 것..
어쨌든 폰코딩을 해봤다..ㅋㅋㅋ 아이폰 메모장에 #include 끄적ㅋㅋㅋㅋㅋ
소스코드
아 폰으로는 소스코드 못올리네
#include <iostream>
#include <cmath>
using namespace std;
int main(){
int n1, n2;
cin >> n1 >> n2;
int min = min(n1,n2);
for(int i =min; i >= 1; i--){
if(n1 % i == 0 && n2 % i == 0){
cout << i << "\n";
break;
}
}
for(int n = 1; n <= max(n1,n2); n++){
if(min*n % n1 == 0 && min*n % n2 == 0){
cout << min*n ;
break;
}
}
return 0;
}
728x90