6개의 다른 숫자가 있는 목록이 있다고 가정합니다. 하나의 숫자만 다섯 번 반복됩니다. 따라서 배열에는 총 10개의 요소가 있습니다. 두 가지 비교만 사용하여 중복 숫자를 찾습니다. 목록이 [1, 2, 3, 4, 4, 4, 4, 4, 5, 6]과 같으면 출력은 4입니다.
숫자가 10개뿐이므로 모든 유형의 중복 숫자에 대해 숫자 범위가 인덱스 3에서 5까지 배치됩니다. 이 인덱스를 확인하여 결과를 찾을 수 있습니다.
예시
#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); }
출력
Duplicate element: 4