일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 동적계획법
- CS
- BFS
- java
- 시뮬레이션
- 유니온 파인드
- 백준
- 알고리즘
- 구현
- 투 포인터
- Kotlin
- 문자열
- 완전탐색
- dfs
- Effective Java
- 위상정렬
- 플로이드-와샬
- swea
- 수학
- 그리디
- 에라토스테네스의 체
- mst
- 스택
- Network
- 이분탐색
- JUnit 5
- 후니의 쉽게 쓴 시스코 네트워킹
- 세그먼트 트리
- 프로그래머스
- 백트래킹
목록구현 (108)
반갑습니다!
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 해당 문제는 숫자를 문자열로 변환한 뒤, 문자열끼리 합친 결과를 비교하는 방법으로 쉽게 해결할 수 있는 문제이다. 코드 C++ #include #include #include using namespace std; bool comp(const string& a, const string& b) { return a + b > b + a; } string solution(vector numbers) { string answer = ""; bool is_all_zero = true; // 모든 숫자가 0인지 체크..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 이 문제는 Heap 자료구조를 사용하면 쉽게 해결할 수 있다. Min-Heap으로 스코빌 지수가 가장 작은 두 개의 음식을 계속해서 섞어주면 쉽게 해결할 수 있다. 이 때 첫 번째 음식의 스코빌 지수가 K 이상인 경우 정답이다. 이 때, 모든 음식을 다 섞어서 1개만 남았는데도 스코빌 지수를 못넘는 경우 -1을 출력해주면 된다. 코드 C++ #include #include #include using namespace std; int solution(vector scoville, int k) { int a..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 상당히 구현하기 까다로운 문제이다. Map을 사용해 장르 별 재생 횟수를 체크하고, 또 하나의 Map을 통해서 동일 장르의 음악 재생 횟수를 저장한 뒤, 별도의 정렬함수의 구현을 통해 해결했다. 코드 C++ #include #include #include #include using namespace std; struct Song { string genre; int count; }; bool cmp(Song& a, Song& b) { return a.count > b.count; } bool cmp2(pa..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 이 문제는 수학에서의 경우의 수 문제라고 볼 수 있다. 문제의 제한사항에 같은 이름을 가진 의상은 존재하지 않고, 스파이는 하루에 최소 한 개의 의상을 입는다고 되어있다. 그리고 각 종류의 의상은 1가지를 선택할 수도 있지만 입지 않을 수 있다. 따라서 [얼굴 갯수 + 1] x [상의 갯수 + 1] x [하의 갯수 + 1] x [겉옷 갯수 + 1] - 1이 된다. 이 때 마지막에 -1은 어떠한 의상도 입지 않은 경우를 빼주는 것이다. 코드 C++ #include #include #include using..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 참여 선수 배열의 크기가 완주 선수 배열의 크기보다 항상 1만큼 크다. 따라서 이를 이용해서 해결하면 된다. 아래의 코드는 참여 선수의 이름을 Key로, 참여 선수 이름의 갯수를 Value로 하는 맵을 통해 해결했다. 참여 선수 배열을 순회하며 맵에 저장하고, 완주 선수 배열을 순회하며 맵의 Value를 1씩 감소시킨다. 이 때 Value가 0이 되는 경우 맵에서 삭제시킨다. 이렇게하면 모든 배열을 순회했을 때 맵에 남아있는 Key 값이 완주하지 못한 선수가 된다. 코드 C++ #include #incl..