#include <iostream>
#include <limits.h>
#include <vector>
int findSecondLargest(const std::vector<int>& vec) {
if (vec.size() < 2) {
std::cerr << "Array must contain at least two elements" << std::endl;
return INT_MIN;
}
int first = INT_MIN, second = INT_MIN;
for (int num : vec) {
if (num > first) {
second = first;
first = num;
} else if (num > second && num != first) {
second = num;
}
}
return second;
}
int main() {
std::vector<int> vec = {42, 7, 93, 58, 29, 61, 17, 84, 36, 75};
int secondLargest = findSecondLargest(vec);
if (secondLargest != INT_MIN) {
std::cout << "The second largest number is: " << secondLargest << std::endl;
}
}
/*
run:
The second largest number is: 84
*/