class Solution {
public:
int longestSubstringWithoutDuplication(string s) {
vector<int> dict(256, -1);
int ans = 0, left = -1;
for(int i = 0; i < s.size(); i++)
{
left = max(left, dict[s[i]]);
ans = max(ans, i - left);
dict[s[i]] = i;
}
return ans;
}
};