티스토리 뷰

첫날이라 C++에 미숙하고 오랜만에 알고리즘 문제를 접해서 한참 애먹었다. 태그가 해시 문제였는데 해시로 푸는 것은 실패했다. 혼자 알고리즘 책 펼쳐 놓고 무한 삽질 .. 다른 사람들 코드를 보니 안 해도 됐던 것 같지만 split도 쉽지 않았다. 문자열 문제에 필수로 등장한다고 하니 외워둬야 할 것 같다.
vector <string> split(string s, string divide) {
vector<string>v;
char* context = NULL;
//char* c = strtok_r((char*)s.c_str(), divide.c_str(),&context);
char* c = strtok((char*)s.c_str(), divide.c_str());
while (c) {
v.push_back(c);
//c = strtok_r(NULL, divide.c_str(),&context);
c = strtok(NULL, divide.c_str());
}
return v;
}
strtok_s, strtok은 programmers에서는 돌아가지 않아 strtok_r을 사용해줘야 했다.
strtok함수는 string을 토큰화 하는 함수이다. 분리된 문자열의 첫번쨰 주소를 리턴한다. (ex. I go 이면 g의 주소)
함수의 원형은 char *strtok_s(char *_String, const char *_Delimit, char **_Context);
c_str 은 string 형으로 변환.(반환형이 char*)
참고로 atoi는 문자열을 int로 리턴
[참고주소]
c++ string c_str 함수 : string을 char *로 바꿔봅시다. (tistory.com)
[전체코드]



오늘은 하도 삽질을 많이 해서 .. 내일 hash로 다시 풀어보는걸로 .. 우선 c++ hash 관련해서 먼저 공부해야 겠다..
Day1 끝!!!
[Day2]

hash로 푼 것.. 다른 사람 코드를 거의 참고해서 풀었다.
처음에 map에 insert할 때 동명이인 예외처리를 안하면 다른 테스트에서 틀렸다고 나온다. 예외처리 필수! unordered_map 사용법 익히기..
'알고리즘 > Programmers' 카테고리의 다른 글
[CodingTest] 프로그래머스 Programmers hash #2 위장 level 2 (0) | 2021.07.21 |
---|---|
[CodingTest] 프로그래머스 Programmers hash #2 전화번호 목록 level 2 (0) | 2021.07.17 |
[CodingTest] 프로그래머스 Programmers 탐욕법 #1 체육복 level 1 (0) | 2021.07.07 |
[CodingTest] 프로그래머스 Programmers 완전탐색 #1 모의고사 level 1 (0) | 2021.07.06 |
[CodingTest] 프로그래머스 Programmers 정렬 #1 k번째 수 level 1 (0) | 2021.07.06 |
- Total
- Today
- Yesterday
- 문자열
- web
- jsp
- python
- brute force
- 브루트 포스
- Oracle
- 정렬
- 자바스크립트
- 고득점 키트
- 자바
- 프로그래머스
- 큐
- Java
- Case When
- 장고
- 백준
- 덱
- baekjoon
- Django
- javascript
- 단계별로풀어보기
- append
- 스프링
- R
- 파이썬
- html
- jQuery
- CSS
- bootstrap
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |