본문 바로가기

13

[백준 1620] 나는야 포켓몬 마스터 이다솜 www.acmicpc.net/problem/1620 1620번: 나는야 포켓몬 마스터 이다솜 첫째 줄에는 도감에 수록되어 있는 포켓몬의 개수 N이랑 내가 맞춰야 하는 문제의 개수 M이 주어져. N과 M은 1보다 크거나 같고, 100,000보다 작거나 같은 자연수인데, 자연수가 뭔지는 알지? 모르면 www.acmicpc.net 풀었다고 하기도 뭐한데 맵 하나만 사용하면 tle가 떠서 맵을 두개 썼다.. #include #include #include using namespace std; int n, m; string tmp; unordered_map um; unordered_map um2; int main(void) { ios_base::sync_with_stdio(0); cin.tie(0); cout.t.. 2021. 1. 31.
[프로그래머스 2019 카카오 개발자 겨울 인턴십] 호텔 방 배정 programmers.co.kr/learn/courses/30/lessons/64063 코딩테스트 연습 - 호텔 방 배정 programmers.co.kr 와 너무 어렵다......... 풀이보고도 이해가 안갔다. 방 개수인 k가 작았더라면 쉽게 풀었겠지만 방 최대 수가 10^12로 배열로 선언할 수 없는 크기이다. 여기서 map을 떠올려야 했다. 그렇다면 map을 어떻게 사용해야 할까? 목적은 x보다 큰 값중 최소값을 찾는 것이다. 물론 전부 탐색해도 되지만 그러면 효율성이 매우 떨어진다. 이 때 필요한 것이 경로 단축을 위한 union find이다. 1번방을 사용한다면 1번방의 다음 방인 2번방을 1번방의 부모로 연결시켜 놓는 것이다. 이렇게 되면 1번방을 찾는 손님은 자연스레 2번방을 배정받는다. 2.. 2021. 1. 20.
[프로그래머스] 레벨3 베스트앨범 programmers.co.kr/learn/courses/30/lessons/42579 코딩테스트 연습 - 베스트앨범 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 programmers.co.kr 맵 응용 문제다. 1. 장르별 조회수를 조회해서 조회수에 따라 장르를 내림차순 정렬 2. 장르별 노래 수집 2-1. 노래 고유번호와 play수를 수집 2-2. play수를 기준으로 내림차순, 노래 고유번호를 기준으로 오름차순 처음에 전체 배열을 조회하며 map을 사용해서 map[gen] += play를 해준다. 동시에 value가 vector인 map을 선언해서 장르별로 노.. 2021. 1. 19.
[프로그래머스] 레벨2 위장 programmers.co.kr/learn/courses/30/lessons/42578 코딩테스트 연습 - 위장 programmers.co.kr 경우의 수를 구하는 문제이다. 모든 옷에 대한 경우의 수를 구해야 하므로 (옷 종류 + 1) * ( 옷종류 + 1) * ... - 1 을 해줘야 한다. 마지막에 -1은 한 개도 선택안하는 경우다. 그래서 옷종류를 세기 위한 방법으로 자료구조 map을 사용한다. map iterator 자꾸 잊어버리지 말자! #include #include #include using namespace std; unordered_map um; int solution(vector clothes) { int answer = 0; int len = clothes.size(); for(in.. 2021. 1. 18.