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 |