[LeetCode] 3. Longest Substring Without Repeating Characters

0

LeetCode

목록 보기
4/58
post-thumbnail

[LeetCode] 3. Longest Substring Without Repeating Characters

풀이

  • 처음에 주어지는 문자열 s가 알파벳으로만 이루어진 줄 알고 잘못된 코드를 짰다.
    알고보니 문제 맨 아래에 작은 글씨로 숫자, 기호, 띄어쓰기도 들어갈 수 있다고 나와있었다!
    앞으로는 문제 아래 나와있는 조건을 꼼꼼히 읽어봐야겠다
    s consists of English letters, digits, symbols and spaces.
#include <set>
#include <algorithm>

class Solution {
public:
    int lengthOfLongestSubstring(string s) {
        int answer = 0;
        for(int start = 0; start < s.length(); ++start){
            //s[start]~s[start+i]까지 문자열 내 char 저장
            set<char> substrSet;
            for(int i = 0; start+i < s.length(); ++i){
                if(substrSet.find(s[start+i]) == substrSet.end()){
                    substrSet.insert(s[start+i]);
                }
                else break;
            }
            answer = max(answer,(int)substrSet.size()); 
        }
        return answer;
    }
};

profile
Be able to be vulnerable, in search of truth

0개의 댓글