Algorithm/PS

·Algorithm/PS
📚 문제https://www.codetree.ai/training-field/frequent-problems/problems/codetree-tour/description?page=1&pageSize=5 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.www.codetree.ai 💡 풀이 과정다익스트라 알고리즘을 사용해 기본 출발지로부터 거리를 계산한다.이후 상품을 생성하면서 value 를 기준으로 최소 힙에 저장한다.상품 삭제 시에는 heap 에서 바로 삭제하기보다는 deleted Set 으로 관리하였다. 출발지 변경 시 다익스트라 알고리즘을 다시 사용하고 기존 상품들의 Val..
·Algorithm/PS
📚 문제https://www.codetree.ai/training-field/frequent-problems/problems/ancient-ruin-exploration/description?page=1&pageSize=5 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.www.codetree.ai 말했다시피 삼성 문제는 호흡이 길기에 단계를 잘 나누어 풀자.💡 풀이 과정def 탐사 진행()1-1. ((x, y 기준 3 * 3 회전) * 3) * 9 1-2. def 유물 획득 가치 계산 1-3. 최대 가치 방법 선택def 유물 획득()def 새로운 조각 생성()3-1 def 유물..
·Algorithm/PS
📚 문제https://www.codetree.ai/training-field/frequent-problems/problems/color-tree/description?page=1&pageSize=5 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.www.codetree.ai 삼성전자 코테를 앞두고 기출을 풀어보고자 준비했다. 실제 상반기에 풀었던 문제 그대로였다. (따로 글은 작성하지 않았지만 코테 통과 후 면접에서 해당 사업부에서는 신입으로 백엔드 개발자를 원하지 않는다고 대차게 떨어졌다.)  삼성 코딩테스트 문제 같은 경우 호흡이 굉장히 길기 때문에 이를 나누고 분석하는 과정이..
·Algorithm/PS
📚 문제Day6 https://code-challenge.elice.io/courses/282926/lectures/2455429/lecturepages/21567987/list 알고리즘 문제집 | 엘리스 코드 챌린지 code-challenge.elice.io💡 풀이 과정처음에는 그리디하게 생각했다.파란색이면 현재에서 가장 많은 선을 그리도록 하고, 빨간색이면 현재에서 가장 적은 선을 그리게 했다.arr 을 [1, 1, ... ] 으로 초기화한다. 이는 모든 노드들이 각각의 그룹이라는 뜻이다.첫 번째 간선에서는 [1, 1, ... , 2] 로 (n-2) 개의 단일 노드와 2개짜리 그룹 하나가 생성될 것이다.이후 파란색 간선에서는 최소 간선 수, arr[0] * arr[1] 개를 추가하고 이를 그룹 짓..
·Algorithm/PS
📚 문제Day 5https://code-challenge.elice.io/courses/282926/lectures/2455429/lecturepages/21567986/list 알고리즘 문제집 | 엘리스 코드 챌린지 code-challenge.elice.io 💡 풀이 과정[a, b, c] 수열에 대해 나올 수 있는 경우의 수를 찾아보자[0, a, b, c, a + b, a + c, b + c, a + b + c] 이다.오름차순 정렬 시 0 이 아닌 부분 수열의 첫 번째 값(a)은 수열의 첫 번째 값(a) 와 동일하다!그리고 [b, b + a], [c, c + a], [b + c, b + c + a] 로 [x, x + a] 형태로 묶어낼 수 있다.즉, [x, x + a] -> x 로 치환하면 나머지 ..
·Algorithm/PS
📚 문제 https://code-challenge.elice.io/courses/282926/lectures/2455429/lecturepages/21567985 알고리즘 문제집 | 엘리스 코드 챌린지 code-challenge.elice.io Day 4 💡 풀이 과정먼저 간선으로 단방향 트리를 생성해야한다.말단 노드들에서 시작할 경우에는 누가 이길 지 명확하기에 말단에서부터 올라가도록 한다.말단에서 두 번째 노드 같은 경우에도 선후공 중 누가 이길 지 바로 알 수 있다.3번 노드에서 선공하는 경우에는 왼쪽으로 가면 (3:2) 승, 오른쪽으로 가면 (3:4) 패이다.선공은 당연히 오른쪽을 선택할 것이고 이는 왼쪽으로 가면 (+1), 오른쪽은 (-1) 로 표현할 수 있으며 플레이어는 항상 max 값을 ..
·Algorithm/PS
https://code-challenge.elice.io/courses/282926/lectures/2455429/lecturepages/21567984/ 알고리즘 문제집 | 엘리스 코드 챌린지 code-challenge.elice.io Day 3💡 풀이 과정괄호가 있는 문제는 연산 처리와 비슷하게 Stack 을 사용하면 편하다.모든 요소들을 Stack 에 집어넣고 ")" 가 나타나면 분기처리한다. "(" 를 찾을 때까지 진행하며, "(" 다음의 숫자만큼 스택에 존재하는 String 값을 곱해준다.python 에서는 "String" * int 를 진행하면 int 만큼 String 이 반복된다.이때, 뒤에서부터 진행하는 것이므로 문자열을 더해줄 때 Stack 에서 pop 한 값을 문자열 앞에 더해준다! ..
·Algorithm/PS
https://code-challenge.elice.io/courses/282926/lectures/2455429/lecturepages/21567982/ 알고리즘 문제집 | 엘리스 코드 챌린지 code-challenge.elice.io Day 2💡 풀이 과정단순하게 i ~ j 까지 배열에서 정렬 시 k 번째 수를 반환하는 문제이다.입력 값들을 정렬시키면 더 효율적으로 풀 수 있을 것 같다.누적합처럼 요소들을 추가 삭제시키면서 정렬해나아가면 효율적일 것 같다.하지만 해당 문제 조건에서 n, m 이 그렇게 높지 않기에 매번 i ~ j 까지 배열을 정렬해서 k 번째를 반환했다.📌 포인트시간 복잡도를 고려하지 않았지만 통과고려한다면 입력값을 정렬시켜 누적합처럼 k 번째를 구했을 것이다.💻  코드impor..
행복한띠용이
'Algorithm/PS' 카테고리의 글 목록