#!/usr/bin/env python
# Created by Bruce yuan on 18-2-7.


class Solution:
    def lengthOfLongestSubstring(self, s):
        """
        :type s: str
        :rtype: int
        """
        if not s:
            return 0
        tmp = {}
        max_ = 0
        start = 0
        for i in range(len(s)):
            # 如果开始是大于我们要的那个,其实没有意义了。不需要重新弄开始
            if s[i] in tmp and start <= tmp.get(s[i]):
                start = tmp.get(s[i]) + 1
            else:
                max_ = max(max_, i - start + 1)
            tmp[s[i]] = i
        return max_


def main():
    s = Solution()
    r = s.lengthOfLongestSubstring("pwwkew")
    print(r)


if __name__ == '__main__':
    main()