class Solution {
public:
int lengthOfLongestSubstring(string s) {
unordered_map<char,int> m;
int sum=0;
int left=0,i=0;
while(i<s.size()){
m[s[i]]++;
while(m[s[i]]>1){
m[s[left]]--;
left++;
}
i++;
sum=max(sum,i-left);
}
return sum;
}
};