전체 글 115

[220808] Level1_ 두 개 뽑아서 더하기

https://school.programmers.co.kr/learn/courses/30/lessons/68644 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이법 STL의 컨테이너인 Set이 중복을 허용하지 않으면서 자동정렬된다는 점을 이용해 문제를 쉽게 해결할 수 있었다. 이중 for문은 옛날에 많이 했던 별피라미드 알고리즘과 유사하다. #include #include #include using namespace std; vector solution(vector numbers) { vector answer; set result; int num = ..

[220807] Level_ 1 모의고사

https://school.programmers.co.kr/learn/courses/30/lessons/42840 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include using namespace std; vector solution(vector answers) { vector answer; int order1[5] = { 1, 2, 3, 4, 5 }; int order2[8] = { 2, 1, 2, 3, 2, 4, 2, 5}; int order3[10] = { 3, 3, 1, 1, 2, 2, 4, 4, 5, 5 }; vector..

[220806] Level_ 1 2016년

https://school.programmers.co.kr/learn/courses/30/lessons/12901 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include using namespace std; string solution(int a, int b) { string answer = ""; vector week = { "THU","FRI", "SAT" ,"SUN", "MON", "TUE", "WED"}; vector month = { 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; ..

Map container 정리

Map이란? C++의 STL에서 연관 컨테이너 중 하나인 map은 레드 블랙 트리로 구성되어 있다. 레드 블랙 트리는 자가 균형 이진 탐색 트리로 삽입과 삭제가 일어나는 경우에 자동으로 그 높이를 작게 유지하는 것이 특징이다. 이 이유는 연산 과정에서 트리의 높이가 한쪽으로 치우치는 것을 막아 시간복잡도 상의 이득을 보기 위함이다. n개의 원소가 있을 때 map은 O(log n)의 시간 복잡도로 삽입, 삭제, 검색을 할 수 있다. key값은 중복이 불가능하며 만약 동일한 key가 있는데 insert를 시도할 시 무시된다. 또한 key값은 오름차순 자동정렬되는데 정렬을 하고싶지 않다면 unordered_map(해시)를 선언해 성능을 높일 수 있다. 선언하는 법 헤더파일에 map을 include 시켜주고, ..

C++/STL 2022.08.05
[220805] Level_ 1 완주하지 못한 선수 (오답노트)

https://school.programmers.co.kr/learn/courses/30/lessons/42576 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 완주하지 못한 선수가 나처럼 느껴지는 문제였다,, 효율성 검사 5개 모두 0점을 맞으며 틀려버린 문제! 이중 for문 쓸때부터 쎄하긴 했지.. 역시 아니다 싶으면 코딩에선 확실히 아니다. 구글링을 통해 찾은 방법으로 내 방법이 어디가 왜 틀린건지 정확히 분석해보겠다. 내코드 #include #include #include using namespace std; string solution(vecto..