목록map (33)
N
https://school.programmers.co.kr/learn/courses/30/lessons/118666?language=javascript 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 주어진 조건대로 맵핑을 진행하면 쉽게 풀 수 있다. 성격 유형의 각 지표는 사전순으로 주어졌기 때문에 그대로 array에 저장. 성격의 점수를 저장하기 위한 map도 선언한다. survey를 순회하면서 점수를 구한다. front와 back으로 문자열을 두 개의 문자로 나눈다. 또한, choice[i]의 점수로 어느 성격 지표에 점수를 더할지 정한다. 만약 4..
https://leetcode.com/problems/third-maximum-number/ Third Maximum Number - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com map을 활용. nums에는 중복된 수가 있을 수 있기 때문에, 중복을 제거하기 위해 map을 선언한다. 그리고 nums를 순회하면서 map에 nums[i]에 해당하는 수가 없으면 nums[i]를 key로 하여 value를 true로 해준다. 순회가 끝나면 다음은 map을 순회한다. ..
https://leetcode.com/problems/longest-consecutive-sequence/ Longest Consecutive Sequence - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com Union-Find와 Map을 활용 parent라는 map을 선언. nums[i]를 순회하면서 key와 value를 모두 자기 자신인 nums[i]로 초기화한다. 이후 연속된 수의 부모를 하나로 합치는 작업을 진행. nums[i]를 순회하면서 unionPa..
https://programmers.co.kr/learn/courses/30/lessons/92334?language=cpp 코딩테스트 연습 - 신고 결과 받기 문제 설명 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다. 각 유저는 한 번에 한 명의 programmers.co.kr map을 이용한 문제 풀이. 3개의 map을 선언하였다. reported는 로 유저가 신고를 받은 횟수를 카운팅한다. done은 로 한 유저가 동일한 유저에 대해 신고를 여러번 했는지 확인하기 위한 map이다. target은 = k 이상이면 count++을 해주고, 내부 for문이 끝나면 answer.push_back(count)를..
https://programmers.co.kr/learn/courses/30/lessons/77486?language=cpp 코딩테스트 연습 - 다단계 칫솔 판매 민호는 다단계 조직을 이용하여 칫솔을 판매하고 있습니다. 판매원이 칫솔을 판매하면 그 이익이 피라미드 조직을 타고 조금씩 분배되는 형태의 판매망입니다. 어느정도 판매가 이루어진 후, programmers.co.kr map과 dfs를 활용한 문제 풀이. 우선 enroll과 referral의 관계를 map 형태로 그려준다. 또한, cost라는 map을 이용해서 수익을 구할 것이다. enroll과 referral을 for문으로 순회하면서 map을 형성. key = enroll[i]로 하고, value = referral[i]로 저장한다. 만약 ref..
https://programmers.co.kr/learn/courses/30/lessons/77486 코딩테스트 연습 - 다단계 칫솔 판매 민호는 다단계 조직을 이용하여 칫솔을 판매하고 있습니다. 판매원이 칫솔을 판매하면 그 이익이 피라미드 조직을 타고 조금씩 분배되는 형태의 판매망입니다. 어느정도 판매가 이루어진 후, programmers.co.kr Map을 이용한 문제 풀이. map = enroll과 referral 배열의 부모-자식 관계를 나타내기 위한 Map. profit = 각 사람들의 판매 이익을 나타내기 위한 Map. enroll을 순회하면서 부모-자식 관계를 나타내도록 하자. enroll[i]를 key, referral[i]를 value로 가지도록 하여 map에 저장한다. 이후 seller..
https://programmers.co.kr/learn/courses/30/lessons/49994 코딩테스트 연습 - 방문 길이 programmers.co.kr Map을 활용하여 문제 풀이. 현재 좌표를 나타내는 x, y를 선언하고 5를 저장한다. -5 ~ 5의 좌표를 가지는데 이를 보정하여 0 ~ 10의 좌표를 가지도록 한다. 그렇기 때문에 시작 좌표는 0, 0이 아닌 5, 5가 된다. rangeCheck 함수는 들어온 인자(좌표)가 범위를 벗어나는지 확인한다. 범위를 벗어나면 0 또는 10을 리턴하여 움직이지 않도록 한다. 범위를 벗어나지 않는다면 그대로 x값을 리턴. for문으로 dirs를 순회. go, back 변수를 이용하여 이전에 방문한 적이 있는지 확인하기로 한다. 또한, cx와 cy를 ..
https://leetcode.com/problems/permutation-in-string/ Permutation in String - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com HashMap을 이용. 문제는 풀었지만 시간이 간당간당하게 통과해서, 더 큰 문자열이 들어오면 다른 알고리즘을 써야할 것 같다. 투포인터를 이용한 문제인 것 같다. map을 선언해서 s1에 존재하는 모든 문자를 카운팅한다. 이후 s2를 순회하면서, map에 해당 문자가 있는지 확인..