[BaekJoon] #5086 - 배수와 약수 [Java][C++]
[BaekJoon] #5086 - 배수와 약수 [Java][C++]
1. 아이디어
주어진 두 수의 배수, 약수 관계를 판단하는 문제로 서로를 나누었을 때, 나머지가 0인지 여부로 간단하게 판별할 수 있다.
2. 복잡도
| 접근 | 시간 | 공간 |
|---|---|---|
| 풀이 | $O(T)$ | $O(1)$ |
($T$ = 종료 줄을 제외한 테스트 케이스 수)
3. 코드
풀이 [Java][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
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer st;
while (true) {
st = new StringTokenizer(br.readLine());
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
if (a == 0) break;
if (a % b == 0) {
bw.write("multiple\n");
} else if (b % a == 0) {
bw.write("factor\n");
} else {
bw.write("neither\n");
}
}
bw.flush();
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
while (true) {
int a, b;
cin >> a >> b;
if (a == 0) break;
if (a % b == 0) {
cout << "multiple\n";
} else if (b % a == 0) {
cout << "factor\n";
} else {
cout << "neither\n";
}
}
}
This post is licensed under CC BY 4.0 by the author.