일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 코딩테스트
- machine learning
- 주정부이민
- 알고리즘
- 컴퓨터과학과
- 방통대
- leetcode
- 방송통신대학교
- 매트랩
- 딥러닝
- Deep learning
- cpp
- 머신러닝
- 개발자
- zeros
- C++
- 프로그래머스
- mpnp
- LAA
- 마니토바
- 캐나다 영주권
- 온라인석사
- LV1
- Plotting
- 조지아텍
- MATLAB
- EOI
- 기본
- omscs
- 선형대수
Archives
- Today
- Total
Krononberg
1935. Maximum Number of Words You Can Type.cpp 본문
🔑 기본 brute force 문제
class Solution {
public:
int canBeTypedWords(string text, string brokenLetters) {
////runtime 32ms :faster than 7%
////memory usage 14.3mb : less than 7%
// int res =0;
// unordered_set<char>s;
// int prev =0; int later =0;
// for(int i =0; i<text.size(); i++){
// s.insert(text[i]);
// if(text[i]== ' ' || i==text.size()-1) {
// prev = s.size();
// for(int j =0; j<brokenLetters.size(); j++){
// s.insert(brokenLetters[j]);
// }
// later = s.size();
// if(prev + brokenLetters.size()==later ) res++;
// s.clear();
// prev=0;
// later =0;
// }
// }
// return res;
//runtime 4ms :faster than 71.09%
//memory usage 6.6mb : less than 84.47%
int check[256] = {0,};
int res = 1;
int flag =0;
for(int i =0; i<brokenLetters.size(); i++){
check[brokenLetters[i]]++;
}
for(int i =0; i<text.size(); i++){
if(text[i]==' '){
res++;
flag =0;
}
if(check[text[i]]==1 && flag ==0) {
res--;
flag = 1;
}
}
return res;
}
};
'개발 로그 > 알고리즘' 카테고리의 다른 글
1356. Sort Integers by The Number of 1 Bits.cpp (0) | 2021.11.07 |
---|---|
1337. The K Weakest Rows in a Matrix.cpp (0) | 2021.10.30 |
1207. Unique Number of Occurrences.cpp (0) | 2021.10.25 |
1380. Lucky Numbers in a Matrix.cpp (0) | 2021.10.21 |
811. Subdomain Visit Count.cpp (0) | 2021.10.20 |