프로그래밍/CodeUp
CodeUp[Q_2005] : 잉여계
조원일
2020. 2. 5. 00:26
728x90
1. 문제
https://codeup.kr/problem.php?id=2005
잉여계
집합 A가 정수 m에 대한 잉여계이면 "yes", 아니면 "no"를 출력하시오.
codeup.kr
[출처 : 코드업(https://codeup.kr/)]
이번 문제는 n개의 정수를 입력받아 임의의 두 수의 차가 m으로 나누어 떨어지면 "no"를 출력하고
모두 나누어 떨어지지 않으면 "yes"를 출력하는 문제입니다.
2. 해답
#include <stdio.h>
int main() {
int Arr[150];
int n, m;
scanf("%d", &n);
for (int i = 0; i < n; i++) {
scanf("%d", &Arr[i]);
}
scanf("%d", &m);
for (int i = 0; i < n - 1; i++) {
for (int j = i + 1; j < n; j++) {
if (Arr[i] > Arr[j]) {
if ((Arr[i] - Arr[j]) % m == 0) {
printf("no"); // 두 수의 차가 m으로 나누어 떨어지면 "no"를 출력하고 끝내기
return 0;
}
}
else if (Arr[i] < Arr[j]) {
if ((Arr[j] - Arr[i]) % m == 0) {
printf("no"); // 두 수의 차가 m으로 나누어 떨어지면 "no"를 출력하고 끝내기
return 0;
}
}
}
}
// 두 수의 차가 모두 m으로 나누어 떨어지지 않으면 "yes"를 출력하고 끝내기
printf("yes");
return 0;
}