Computer >> Máy Tính >  >> Lập trình >> C ++

Tìm các bản sao theo các ràng buộc nhất định trong C ++

Giả sử chúng ta có một danh sách với 6 số khác nhau. Chỉ có một số được lặp lại năm lần. Vì vậy, có tổng số 10 phần tử trong mảng. Tìm các số trùng lặp chỉ bằng hai phép so sánh. Nếu danh sách giống như [1, 2, 3, 4, 4, 4, 4, 4, 5, 6], thì đầu ra là 4.

Vì chỉ có 10 số nên đối với bất kỳ loại số trùng lặp nào, phạm vi số sẽ được đặt từ chỉ số 3 đến chỉ số 5. ​​Bằng cách kiểm tra các chỉ số này, chúng ta có thể tìm thấy kết quả.

Ví dụ

#include<iostream>
using namespace std;
int getDuplicate(int array[]) {
   if (array[3] == array[4])
      return array[3];
   else if (array[4] == array[5])
      return array[4];
   else
      return array[5];
}
int main() {
   int a[] = {1, 2, 3, 4, 4, 4, 4, 4, 5, 6};
   cout << "Duplicate element: " << getDuplicate(a);
}

Đầu ra

Duplicate element: 4