int longestUniqueSubstr(string &s) {
// code here
int i=0, j=0, maxCount=0;
vector<int> freq(26);
/*while(j<s.size()) {
while(freq[s[j]-'a'] > 0) {
freq[s[i]-'a']=0;
i++;
}
freq[s[j]-'a']++;
maxCount = max(maxCount, j-i+1);
j++;
}*/
while(j<s.size()) {
if(freq[s[j]-'a'] > 0) {
while(i<j && s[i]!=s[j]) {
freq[s[i]-'a']=0;
i++;
}
i++;
}
freq[s[j]-'a']++;
maxCount = max(maxCount, j-i+1);
j++;
}
return maxCount;
}