문제
접근
그냥 숫자하나하나 해봤다.
코드
- 파이썬 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
def solution(n, m):
answer = []
if n>m:
min_v, max_v = m, n
else:
min_v, max_v = n, m
for i in range(min_v, 0, -1):
if n%i == 0 and m%i == 0:
answer.append(i)
break
for i in range(max_v, n*m+1):
if i%n == 0 and i%m == 0:
answer.append(i)
break
return answer
- C++ 코드
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
26
27
28
29
#include <vector>
using namespace std;
vector<int> solution(int n, int m) {
vector<int> answer;
int min, max;
if(n<m){
min = n;
max = m;
}
else{
min = m;
max = n;
}
for(int i = min; i>=1;i--){
if(n%i==0 && m%i==0){
answer.push_back(i);
break;
}
}
for(int i = max; i<= n*m;i++){
if(i%n == 0 && i%m == 0){
answer.push_back(i);
break;
}
}
return answer;
}