test case 운빨이고 사실 한 16%정도
시간복잡도 O(n^2) 풀이
class Solution { public: int lengthOfLongestSubstring(string s) { int arrChar[256]; initArr(arrChar); int longestSub = 0; int acc =0; string::iterator it = s.begin(); string::iterator eit = s.end(); string::iterator iter; for (;it!=eit; it++){ for(iter=it;iter!=eit;iter++){ int idx = *iter; if(arrChar[idx]<1){ arrChar[idx]++; acc++; } else{ if(acc >= longestSub) longestSub = acc; break; } } if(iter==eit && acc>=longestSub) longestSub = acc; initArr(arrChar); acc =0; } return longestSub; } void initArr(int *arr){ for(int i=0;i<256;i++){ arr[i]=0; } } };
'2020 이전 > 리트코친놈&amp;기타문제' 카테고리의 다른 글
프로그래머스 단어 변환 (0) | 2019.09.20 |
---|---|
리트코드문제 25 Reverse Nodes in k-Group (0) | 2019.01.21 |
리트코드 문제 12 Integer to Roman (0) | 2019.01.11 |
리트코드 문제 19 Remove n-th Node from End (0) | 2018.12.31 |