알고리즘16 :: BOJ_13241_최소공배수
단순히 최소공배수를 구하는 문제였다.
다만, 두 수가 서로소 일경우는 if(b==1)이 없이는 무한루프가 돌 수 있기 때문에 b==1 이란 블락을 하나 생성하여 추가해줬다.
최소 공배수는 알다싶이, (a*b)%gcd 로 계산할 수 있다.
주의할 점은 문제에서 언급한대로 값이 크기 때문에 long long int를 사용해야 했었다.
(...처음에 서로소를 찾는 문제인줄 알고 에라토스 테네스 체를 구현하고 있었는데, 다시 보니까 전혀 아니더라카더라)
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
|
#include<bits/stdc++.h>
using namespace std;
const int MAX = 1000000;
int prime[MAX];
int pn;
bool check[MAX+1];
int gcd(int a, int b){
if(b==0)
return a;
if(b==1)
return 1;
gcd(b, a%b);
}
int main(){
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
long long int a,b;
cin>>a>>b;
int _gcd = gcd(a,b);
cout<<(a*b)/_gcd<<endl;
}
|
cs |
'알고리즘' 카테고리의 다른 글
알고리즘19 :: Graph(bfs) (0) | 2019.02.27 |
---|---|
알고리즘17 :: BOJ_3053_택시기하학 (0) | 2019.02.26 |
알고리즘15 :: BOJ_1107_리모컨 (0) | 2019.02.25 |
알고리즘14 :: BOJ_1057_토너먼트 (0) | 2019.02.25 |
알고리즘13 :: BOJ_2293_동전1 (0) | 2019.02.23 |
댓글
이 글 공유하기
다른 글
-
알고리즘19 :: Graph(bfs)
알고리즘19 :: Graph(bfs)
2019.02.27 -
알고리즘17 :: BOJ_3053_택시기하학
알고리즘17 :: BOJ_3053_택시기하학
2019.02.26 -
알고리즘15 :: BOJ_1107_리모컨
알고리즘15 :: BOJ_1107_리모컨
2019.02.25 -
알고리즘14 :: BOJ_1057_토너먼트
알고리즘14 :: BOJ_1057_토너먼트
2019.02.25
댓글을 사용할 수 없습니다.