classSolution { public: intlengthOfLongestSubstring(string s){ vector<int> last(256, -1); // record the last seen position for each character // 原本用map寫但卡測資,因為map預設所有東西都是0,而我們要設定的值是-1 // 如果要用map寫,在修改l的時候需要先判斷資料是否存在(last.find(curr)) char curr; int ans = 0; for(int l=0, r=0; r<s.length(); ++r){ curr = s[r]; l = max(l, last[curr]+1); ans = max(ans, r-l+1); last[curr] = r; } return ans; } };