Dev-Matching

    [Java] 프로그래머스 (다단계 칫솔 판매) Dev-Matching 3

    Problem : https://programmers.co.kr/learn/courses/30/lessons/77486 코딩테스트 연습 - 다단계 칫솔 판매 민호는 다단계 조직을 이용하여 칫솔을 판매하고 있습니다. 판매원이 칫솔을 판매하면 그 이익이 피라미드 조직을 타고 조금씩 분배되는 형태의 판매망입니다. 어느정도 판매가 이루어진 후, programmers.co.kr Approach 트리 를 구성할 수 있는지, 특정 노드를 시작으로 부모 노드들을 순회할 수 있는지가 핵심인 문제이다. 문제 풀이의 주요 로직은 다음과 같다. 트리를 구성하는 전처리 과정이 필요하다. 이 과정에서 트리를 구성함은 물론, 현재 노드 i에 대하여 부모 노드가 무엇인지도 저장해주어야 한다. 각 seller에 대하여 반복문을 돌린다..

    [Java] 프로그래머스 (행렬 테두리 회전하기) Dev-Matching 2

    Problem : https://programmers.co.kr/learn/courses/30/lessons/77485 코딩테스트 연습 - 행렬 테두리 회전하기 6 6 [[2,2,5,4],[3,3,6,6],[5,1,6,3]] [8, 10, 25] 3 3 [[1,1,2,2],[1,2,2,3],[2,1,3,2],[2,2,3,3]] [1, 1, 5, 3] programmers.co.kr Approach 행렬의 특정 부분을 회전시킴과 동시에, 그 영역에 있는 최솟값을 찾는 문제이다. 행렬 회전을 구현할 수 있어야 한다. 행렬 회전만 구현할 줄 안다면, 약간의 조건을 걸어 쉽게 풀이가 가능하다. 문제 풀이의 주요 로직은 아래와 같다. 좌상단과 우하단의 위치를 찾고, 그 영역의 테두리 부분을 시계방향 90도 회전 ..

    [Java] 프로그래머스 (로또의 최고 순위와 최저 순위) Dev-Matching 1

    Problem : https://programmers.co.kr/learn/courses/30/lessons/77484 코딩테스트 연습 - 로또의 최고 순위와 최저 순위 로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호 programmers.co.kr Approach 먼저 주어진 입력에서 0의 개수를 센다. 최고 순위는 0이 모두 당첨번호와 같다는 것을 가정하여 계산하고, 최저 순위는 0이 모두 당첨번호와 다르다는 것을 가정하여 계산한다. 그리고 난 뒤, 일치하는 번호의 개수를 가지고 등수를 계산하여 반환하면 되는 간단한 문제이다. Code im..