개발자/문제풀이 (C언어)
[백준/BOJ] 5086번 배수와 약수 (C/C++)
devBB
2023. 5. 18. 22:50
728x90
반응형
백준 온라인 저지(BOJ) 5086번 배수와 약수
https://www.acmicpc.net/problem/5086
5086번: 배수와 약수
각 테스트 케이스마다 첫 번째 숫자가 두 번째 숫자의 약수라면 factor를, 배수라면 multiple을, 둘 다 아니라면 neither를 출력한다.
www.acmicpc.net
* 사용언어 : C언어, C++
1. 문제
각 테스트 케이스 마다 2개의 숫자가 주어짐
첫 번째 숫자가 두 번째 숫자의 약수이면 factor, 배수이면 multiple, 둘 다 아니면 neither 를 출력
마지막 줄에는 0 이 2개 주어짐 (== 종료)
2. 풀이
나머지 연산(%)만 알면 쉽게 풀 수 있는 문제입니다.
정확하게 배수 or 약수로 떨어지는 경우 나머지 연산의 결과가 0 이 됩니다.
나머지 연산이 0 이 되면 factor 혹은 multiple 을 출력해주고,
둘 다 아니면 neither 를 출력하면 됩니다.
3. 코드
#ifndef _CRT_SECURE_NO_WARNINGS
#define _CRT_SECURE_NO_WARNINGS
#endif
/*
5086_배수와 약수
1112kb 0ms
*/
#include <cstdio>
int main() {
#ifdef _WIN32
freopen("input.txt", "r", stdin);
#endif // _WIN32
int a, b;
while (1) {
scanf("%d %d", &a, &b);
if (!a && !b) break;
if (!(b % a)) printf("factor\n");
else if (!(a % b)) printf("multiple\n");
else printf("neither\n");
}
return 0;
}
* 0 는 false, 1 은 true 입니다.
728x90
반응형