목록map (16)
어흥
문제 링크: https://www.acmicpc.net/problem/21276 21276번: 계보 복원가 호석 석호촌에는 N 명의 사람이 살고 있다. 굉장히 활발한 성격인 석호촌 사람들은 옆 집 상도 아버님, 뒷집 하은 할머님 , 강 건너 유리 어머님 등 모두가 한 가족처럼 살아가고 있다. 그러던 어느 날 www.acmicpc.net 1. 주의할 점 - String 형태의 배열을 어떻게 표현할 것인가? - 위상정렬에 대해 알고 있어야 한다 2. 구현 - 사람들에 대한 정보를 People에 담는다 - People을 정렬한 뒤, HashMap에 넣는다 - 하나는 이름을 통해 Index를 알아내는 Map. 그리고 다른 하나는 Index를 통해 이름을 알아내는 revMap. - 관계에 대한 정보는 Li[]에 ..
문제 링크: https://programmers.co.kr/learn/courses/30/lessons/1845?language=java 코딩테스트 연습 - 폰켓몬 당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다. programmers.co.kr 1. 주의할 점 - 무엇을 출력해야하는지 잘 살펴본다 (조합의 수로 생각했다가 문제만 여러번 다시 읽었다..) 2. 구현 - Map을 이용해서 를 저장한다 - 폰켓몬의 종류와(Map의 크기) 골라야하는 폰켓몬의 수(Nums/2)를 비교하고, 둘 중 작은것을 반환한다 [C++] #include #include #include..
문제 링크: https://programmers.co.kr/learn/courses/30/lessons/42888 코딩테스트 연습 - 오픈채팅방 오픈채팅방 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오 programmers.co.kr 1. 주의할 점 - 입력에 대한 처리를 잘 수행한다 - Map을 이용한다 2. 구현 - 입장/퇴장에 대한 내용을 Word 벡터에 저장한다 - 유저아이디를 Ids 벡터에 저장한다 - Map 에 형태로 저장한다 - Ids 벡터와 Map 그리고 Word 벡터를 잘 이용하여 정답을 반환한다 #include #include #include #include #..
문제 링크: programmers.co.kr/learn/courses/30/lessons/77486 코딩테스트 연습 - 다단계 칫솔 판매 민호는 다단계 조직을 이용하여 칫솔을 판매하고 있습니다. 판매원이 칫솔을 판매하면 그 이익이 피라미드 조직을 타고 조금씩 분배되는 형태의 판매망입니다. 어느정도 판매가 이루어진 후, programmers.co.kr 1. 주의할 점 - Map을 통해 String과 Int를 연관시킨다 - 조건에 알맞게 구현한다 2. 구현 - Map m에 사람과 번호를 매칭시킨다 - Map을 통해 각 사람을 등록시킨 사람 Par을 설정한다 - Seller 벡터를 통해 판매원이 전달된 수익을 Money에 할당하고, Cur을 통해 현재 사람을 가리킨다. Cur이 0보다 클때까지 While문을 ..
문제 링크: programmers.co.kr/learn/courses/30/lessons/43164 코딩테스트 연습 - 여행경로 [["ICN", "SFO"], ["ICN", "ATL"], ["SFO", "ATL"], ["ATL", "ICN"], ["ATL","SFO"]] ["ICN", "ATL", "ICN", "SFO", "ATL", "SFO"] programmers.co.kr 1. 주의할 점 - 지문을 정확히 읽어야 한다 (만일 경로가 여러개일 경우, 알파벳 순서가 앞선것 출력) - 알파벳 순서에 대한 처리를 수행한다 2. 구현 - 티켓에 포함된 공항명을 Map에 담는다. 또한, 경로에 대한 정보를 V[출발공항 번호]에 '도착공항'을 담는다 - V[] 벡터에 대해 알파벳 숫자가 앞선 순서대로 정렬한다 ..
문제 링크: programmers.co.kr/learn/courses/30/lessons/64065 코딩테스트 연습 - 튜플 "{{2},{2,1},{2,1,3},{2,1,3,4}}" [2, 1, 3, 4] "{{1,2,3},{2,1},{1,2,4,3},{2}}" [2, 1, 3, 4] "{{4,2,3},{3},{2,3,4,1},{2,3}}" [3, 2, 4, 1] programmers.co.kr 1. 주의할 점 - 각 원소를 모두 숫자로 끊는다. 이때, 2자리수 이상을 어떻게 처리해야 하는지 생각한다 2. 구현 - 문자열 S에서 문자 1개씩 읽는다. 이때, 숫자형태인 문자라면 str에 더한다. 아닌 경우, str을 int로 바꾼 이후, 0이 아니라면(""->0으로 치환된다. 또한, 자연수라고 했으므로 0..
문제 링크: programmers.co.kr/learn/courses/30/lessons/64063 코딩테스트 연습 - 호텔 방 배정 programmers.co.kr 1. 주의할 점 - 범위가 1~10^12를 어떻게 처리할 것인가 → 배열 시도시 컴파일 에러 - Room_Number 벡터로 1이 20만개 들어온다고 할때, 하나하나 다음칸을 확인한다 → O(N^2): TLE 2. 구현 - 해당 방이 배정되었다면, 다음 방을 가리키도록 한다 → '유니온 파인드' 처럼 생각한다 → O(NlgN) Ex. 순서대로 2,2,3이 들어오고 추가로 2가 들어온다면, 2,2,3은 모두 다음으로 비어있는 칸인 5를 가리키도록 하여 2가 5에 할당되도록 한다 - Map을 이용하여 10^12도 처리할 수 있도록 한다. Map..
문제 링크: www.hackerrank.com/challenges/frequency-queries/problem?h_l=interview&playlist_slugs%5B%5D=interview-preparation-kit&playlist_slugs%5B%5D=dictionaries-hashmaps Frequency Queries | HackerRank Process the insert/delete queries and report if any integer is there with a particular frequency. www.hackerrank.com 1. 주의할 점 - X,Y,Z의 범위가 1~10^9사이다 - Map + 배열을 이용하여 해결한다 - 배열의 범위가 크지 않으므로, indexOutOf..