lv3

코딩 테스트/프로그래머스

[프로그래머스] 표 병합

📙 1. 문제 Link : https://school.programmers.co.kr/learn/courses/30/lessons/150366 문제 설명 풀이 1 풀이 과정 : Union-Find알고리즘을 이용한 문제 1. cell배열과 parent 배열 cell 배열 : 51x51 크기의 2차원 배열로, 각 셀에 할당된 문자열 값을 저장 parent 배열 : 51x51 크기의 2차원 배열로, 각 셀의 부모 셀(병합이 일어난 경우 해당 셀이 속한 그룹의 대표 셀)의 좌표를 저장 2. 각 기능들을 함수화해주어, 추상화하였다. - iterateAll(callbackFn) : 모든 셀에 대해 주어진 콜백 함수를 실행 - find(coord) : 좌표 [r,c]를 찾는 - isSameCoords([r,c],p..

코딩 테스트/프로그래머스

[프로그래머스] 코딩테스트 공부

📙 1. 문제 Link : https://school.programmers.co.kr/learn/courses/30/lessons/118668 문제 설명 풀이 1 : 내 풀이 풀이 과정 1. problems배열을 순환하며 [0], [1] 즉 alp_req와 cop_req가 가장 큰 값을 찾는다. 2. 내 알고력과 코딩력이 필요한 최대 점수를 넘어설 수 있기에, 문제의 필요한 최대 점수를 targetAlp와 targetCop에 각각 저장한다. 3. 2차원 배열 visit를 만든다. 이는 현재 가진 코딩력과 알고력을 가지기 위한 시간의 최솟값을 저장하는 배열이다. 4. 모든 경우를 탐색하기 위해 DFS를 돌린다. 인자 : alp, cop, cnt, problems이다. 4.1. 만약, 현재 내 알고력알고력 ..

코딩 테스트/프로그래머스

[프로그래머스] 표현 가능한 이진트리

📙 1. 문제 Link : https://school.programmers.co.kr/learn/courses/30/lessons/150367 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 풀이 1 : 런타임 에러 풀이 과정 1. 2진수로 변환 : toString(2) 2. 트리로 만들기 : makeTree(), (2**n)-1보다 작은 값이 되면 앞에 0을 붙여줌 3. 각 경우 별 트리의 조건에 성립하는지 판단 -> 트리인지 체크하는 함수 (재귀함수) - "부모 요소가 0일 때, 자식 노드가 1이라면 이진트리 형태가 아니다. 그 외의 형태는 ..

피터s
'lv3' 태그의 글 목록