일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Effective Java
- swea
- 후니의 쉽게 쓴 시스코 네트워킹
- 알고리즘
- 투 포인터
- 그리디
- dfs
- 스택
- 유니온 파인드
- 구현
- 문자열
- 이분탐색
- 세그먼트 트리
- Network
- BFS
- Kotlin
- 완전탐색
- 백준
- 백트래킹
- 에라토스테네스의 체
- CS
- java
- 위상정렬
- 프로그래머스
- JUnit 5
- 시뮬레이션
- 플로이드-와샬
- 수학
- 동적계획법
- mst
목록전체 글 (291)
반갑습니다!
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. 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..
4485번: 녹색 옷 입은 애가 젤다지? www.acmicpc.net 풀이 경주로 건설 문제와 거의 유사한 문제이다. BFS 알고리즘을 통해서 해결했다. 주의해야할 것은 같은 지점에 위치할 때의 루피의 값이 이전 방향에 따라서 달라질 수 있다는 것이다. BFS외에 다익스트라 알고리즘을 통해서도 해결할 수 있다. 코드 C++ #include #include #include #include #define MAX 987654321 using namespace std; struct Link { int x, y, dir; }; int map[125][125]; int chk[125][125][4]; const int dx[] = { -1, 0, 1, 0 }, dy[] = { 0, -1, 0, 1 }; void i..