#include <iostream>
#include <unordered_set>
int findMininimumIndex(int arr[], int size) {
int minIndex = -1;
std::unordered_set<int> set;
for (int i = size - 1; i >= 0; i--) {
if (set.find(arr[i]) != set.end()) {
minIndex = i;
}
else {
set.insert(arr[i]);
}
}
return minIndex;
}
int main()
{
int arr[] = { 3, 7, 8, 6, 9, 1, 8, 8, 6, 1, 1, 8 };
int size = sizeof(arr) / sizeof(arr[0]);
std::cout << findMininimumIndex(arr, size);
}
/*
run:
2
*/