일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 레벨3
- dp
- 삼성
- Map
- 백준
- 문자열
- 레벨2
- priority_queue
- 코딩스킬
- Sort
- 완전탐색
- 삼성SW테스트
- dfs
- BFS
- 코딩테스트
- 프로그래머스
- 2018
- 시뮬레이션
- 백트래킹
- 브루트포스
- 모의SW역량테스트
- STL
- 이런게4문제
- swea
- KAKAO
- Set
- substr
- C++
- 삼성SW역량테스트
- find
- Today
- Total
목록7. 코딩 스킬 (7)
-
C++로 코딩 테스트를 준비하다보면 문자열에 대한 공부를 하게 된다. 이전에 compare, substr, replace, swap, find 함수에 대해 다룬 글 (https://cpp-dev.tistory.com/56?category=852537) 이 있다면, 오늘은 공백을 포함한 문자열이 주어졌을 때, 공백을 제외한 문자열들을 추리는 코드를 살펴보고자 한다. 심심치않게 이런 기능이 코딩테스트에서 활용되므로 여기에 정리해둔다. 예시를 위해 C++ STL 을 활용해봤다. 먼저 을 추가하고 stringstream에 분석하고자 하는 문자열을 22줄과 같이 넣는다. 그리고 문자열 변수에 while을 돌며 엔터를 만날때까지 공백을 제외한 문자열을 차례로 넣어주면 된다. 해당 부분은 22~28줄이다. 29~35..
C++을 활용해 삼성 SW 역량테스트 문제를 풀어보면 map이나 set은 그다지 필요가 없다. 다만 프로그래머스의 다양한 문제들을 다른 회사 대비용으로 풀다보면서 이 컨테이너들을 가끔 접하게 됐다. 사용이 미숙해 이번 기회에 자주 쓰이는 함수들을 정리해보았다. 아래의 실행 화면과 써둔 해당 라인을 같이 보면 이해가 쉽다. 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 7..
[참고] 1. C++ sort 함수 : https://blockdmask.tistory.com/178 [C++] sort algorithm 정리 및 예시 안녕하세요 BlockDMask 입니다. 오늘은 C++ STL 에서 제공하는 알고리즘 중에 sort 알고리즘에 대해 알아보겠습니다. 0. sort algorithm sort 알고리즘은 헤더파일에 속해있습니다. sort(start, end).. blockdmask.tistory.com 2. C++11이상 컴파일러 환경에서 string int 변환 https://arer.tistory.com/43 [C++] string to int, int to string string to int - string에서 int로 변환 atoi()함수 사용. -> atoi(ch..
먼저 정렬과 관련한 이전 관련 포스팅을 첨부한다. 1. 문자열 내 입맛대로 정렬하기 (프로그래머스 레벨 2): https://cpp-dev.tistory.com/84 불러오는 중입니다... 2. 우선순위 큐를 이용한 좌표벡터 정렬 활용 (삼성 SW 역테 기출): https://cpp-dev.tistory.com/12?category=852516 불러오는 중입니다... 개인적으로는 우선순위 큐보다 위 1번의 방법대로 새로운 bool 함수를 정의하고 구조체 내부 요소에 원하는 조건대로 bool형을 반환해 사용하는 것이 더욱 편리했다. 그런데, 시간 복잡도 상 sort는 O(NlogN)이고, priority_queue는 push/pop시 O(logN)이다. 결국 N개의 자료를 먼저 입력받고 sort하나, N번..
삼성 SW 테스트와는 조금 다르게 카카오같은 기업은 문자열을 잘 다룰때 편하게 문제를 풀 수 있는 것 같다. C++ STL과 알고리즘 위주로 공부를 해오던 나에게는 낯선 영역이라 자주 쓰이는 함수를 여기에 정리한다. 함수는 compare, substr, find, replace, swap 에 대해 정리했으며 템플릿이 어떻게 생겼는지 위부분에 정리해두었고, 아래부터는 각 함수의 사용 예시를 들었다. 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 ..
삼성SW코딩 테스트를 준비하면서 C++ 유저라면 STL 사용은 필수라고 할 수 있다. 다양한 선형 자료구조 가운데 위 세 개 벡터, 큐, 뎈에 대한 사용법만 안다면 훨씬 쉽게 문제를 풀 수 있다. (알고리즘적인 요소말고) 위 세 STL 사용을 위한 예시를 아래와 같이 정리해둔다. push, push_back, push_front, pop_front, pop_back에 대한 것은 내가 알고있어서 예시 따로 안듬. (사실 큐가 인덱싱으로 접근이 안된다는 거 하나때문에 시작한 이것저것해본 흔적) 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 32 33 34 35 36 37 38 39 40 41 42 43 4..
string을 int로 변환, int를 string으로 변환해야 할 때가 종종있다. 이 때 어떻게 해야하는지 여기에 기록해둔다. (공통 라이브러리) #include #include #include 1. string -> int 변환 string str1 = "12345"; int str2int; stringstream s_str(str1); s_str >> str2int; 2. int -> string 변환 int in1 = 12345; ostringstream ostr; ostr 숫자로 바꿀때는 '0'을 빼면되고, 반대의 경우 더하면 변환된다. (문자)7 -> (숫자)7은 '7'-'0'으로.