#include <iostream>
#include <vector>
int findMode(const std::vector<int>& sortedArray) {
if (sortedArray.empty()) {
return -1; // Invalid input: empty array
}
int currentNumber = sortedArray[0];
int currentCount = 1;
int maxNumber = currentNumber;
int maxCount = currentCount;
for (int i = 1; i < sortedArray.size(); ++i) {
if (sortedArray[i] == currentNumber) {
++currentCount;
} else {
currentNumber = sortedArray[i];
currentCount = 1;
}
if (currentCount > maxCount) {
maxNumber = currentNumber;
maxCount = currentCount;
}
}
return maxNumber;
}
int main() {
std::vector<int> sortedArray = {1, 2, 2, 3, 4, 4, 4, 5, 5, 5, 5};
int mode = findMode(sortedArray);
if (mode != -1) {
std::cout << "Mode: " << mode << std::endl;
} else {
std::cout << "Invalid input: empty array" << std::endl;
}
return 0;
}