https://school.programmers.co.kr/learn/courses/30/lessons/92342어피지 의 우승을 바라는 부패한(?) 양궁대회 위원회에 대해 라이언의 우승으로 정의를 실현하고자 하는 문제입니다.어피치 보다 1발 이상 맞췄을 때,
dfs를 이용한 완전탐색으로 풀이가 가능하나..최대한 많은 수의 양들을 지켜야하므로 무작적 깊이 탐색을 하면 안된다. 양을 발견시 처음 노드로 돌아오도록 한다면, 같은 level에 있는 양도 찾을 수 있으므로 최대한 양을 많이 모을 수 있다.단, 한 번 방문한 양과 늑
이 문제는 문제에 제시된 시뮬레이션을 그대로 구현하면 되는 문제이다.우선 문제에 제시된 데이터들을 보자선택된 행 (인덱스)구별된 값을 가진 표삭제 기록 스택특정 데이터가 있는지 없는지 추적하는 해시맵사실 이 문제에 많은 시간을 썼지만 결국 시간복잡도의 문제는 풀지 못했
시간초과가 날 것이 뻔했지만, 달리 방도가 생각나지 않아 완전탐색을 이용해 접근했다.친구가 건널 때 마다 stones 배열의 값을 1씩 줄입니다.stones 배열의 요소가 0으로 반복되는 지역을 찾고, 그 반복되는 수가 k보다 크거나 같은지 판단합니다.k보다 작고, 무
복잡해 보이지만 단순한 순열 조합 문제입니다.각각의 banned_id가 가질 수 있는 경우의 수 구하기각각의 경우의 수를 이용해 조합을 계산조합의 개수 = 정답예를 들면 "fr\*d\*"는 "frodo", "fradi", "abc1\*\*"는 "abc123"를 가질 수
2차원 배열로 표현되는 평면에 대해서 정해진 규칙을 수행하는 문제입니다. 문제의 경우 파티션으로 막혀있지 않은 경우 맨해튼 거리가 2이내로 사람들이 떨어져 있는지 판단하는 문제입니다. 문제 조건은 다음과 같이 재 구성했습니다.1\. 사람이 있는 좌표 기준 동서남북 네
prices의 각 가격은 1 이상 10,000 이하인 자연수입니다. 이므로 O(n)를 구현해야하는 문제입니다.각각의 리스트 요소가 n, n-1, n-2, ... 방식으로 비교하는 경우이므로 스택을 통해 해결하면 시간복잡도를 맞출 수 있을 것 같습니다.이상하게도 O(n^
전형적인 DFS 문제이다. 조금 다른 점이라면, 낮은 level부터 높은 level로 가는게 아니라 그 반대의 방법으로 가는 것이다. 트리의 진행방향이 referral 라는 이름으로 정해져 있고 하나의 방향 밖에 없어서 간단하다.따로 방문했는지 않했는지 체크할 필요도
문제 접근 숫자를 가진 행렬을 2차원 배열을 이용해, 특정한 규칙을 구현하는 문제이다. 사실 내가 어려워하는 문제인데, 우선 세부적인 내용을 구현해야 하기 때문에, 시간이 소모되고, 특히 2차원 배열이 난 좀 헷갈린다. 난 이 문제를 다음과 같이 접근했다. 숫자 행
두 배열을 비교하는 매우 전형적인 문제이다. for문 2개를 연결하여 풀 수도 있겠지만, hash를 이용해 O(n)으로 해결해 보겠습니다.O(n^2) 가 나타나는 시점에 hash 자료구조를 고려하는게 필요합니다.
지금부터 DFS 관련 문제해결 방법에 대해 알아보자.기본적으로 JS를 한다.문제해결 순서는 다음과 같다.주어진 문제가 DFS를 필요로 하는지 파악한다.DFS 함수를 정의한다.DFS 함수를 출력한다.주어진 문제가 DFS 문제인지 판단하는 것은 매우 간단하다.문제에서 단순