class Solution { public: vector<char> v; unordered_map<char, int> hash; //Insert one char from stringstream void Insert(char ch) { v.push_back(ch); hash[ch]++; } //return the first appearence once char in current stringstream char FirstAppearingOnce() { for (auto &i: v) if (hash[i] == 1) return i; return '#'; } };