Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++를 사용하여 모든 요소를 ​​나눌 수 있는 배열 요소 찾기

<시간/>

요소가 거의 없는 배열 A가 있다고 가정합니다. 모든 요소를 ​​A로 나눌 수 있도록 A에서 요소를 찾아야 합니다. A가 [15, 21, 69, 33, 3, 72, 81]과 같다고 가정하면 모든 숫자는 3으로 나눌 수 있으므로 요소는 3이 됩니다.

이 문제를 해결하기 위해 우리는 A에서 가장 작은 숫자를 취하여 모든 숫자를 가장 작은 숫자로 나눌 수 있는지 여부를 확인하고, 그렇다면 숫자를 반환하고, 그렇지 않으면 false를 반환합니다.

예시

#include<iostream>
#include<algorithm>
using namespace std;
int getNumber(int a[], int n) {
   int minNumber = *min_element(a, a+n);
   for (int i = 1; i < n; i++)
      if (a[i] % minNumber)
      return -1;
   return minNumber;
}
int main() {
   int a[] = { 15, 21, 69, 33, 3, 72, 81 };
   int n = sizeof(a) / sizeof(int);
   cout << "The number is: "<< getNumber(a, n);
}

출력

The number is: 3