#include <vector>
#include <unordered_map>
class Solution {
public:
int singleNumber(std::vector<int>& nums) {
if (nums.size() <= 1) return nums[0];
std::unordered_map<int, int> nFreq;
for (const int& n : nums) nFreq[n]++;
for (auto& [n, f]: nFreq) {
if (f == 1) return n;
}
return nums[0];
}
};