본문 바로가기
반응형

알고리즘/항해99 스터디29

99클럽 코테 스터디 22일차 TIL - Binary Search (프로그래머스 '징검다리') 항해99 코테 스터디 22일차 문제인 프로그래머스의 '징검다리'는 징검다리의 돌을 n개 제거하여 생기는 돌들간의 간격의 최솟값의 최댓값을 구하는 문제다. 난이도는 레벨4이며 이분탐색을 통해 해결할 수 있다. 오늘의 문제 - 징검다리 문제 정보문제 키워드- 이분탐색(Binary Search)난이도- Level 4 문제 요약징검다리의 길이 distance와 각 돌의 위치가 배열 rocks로 주어진다.돌을 n개 제거한 뒤 돌간의 간격의 최솟값을 구하는데, 그 최솟값이 최대가 되는 경우를 구하여라. 문제 풀이 과정  최솟값의 최댓값... 언제봐도 늘 헷갈리는 개념이다.이분탐색을 이용한 다른 어려운 문제를 풀었던 기억이 있어 찾아봤는데, 걔는 '징검다리 건너기'이고 얘는 '징검다리'이다. 징검다리는 다 BS를 쓰.. 2024. 6. 10.
99클럽 코테 스터디 21일차 TIL - DP (프로그래머스 '도둑질') 항해99 코테 스터디 21일차 문제인 프로그래머스의 '도둑질'은 원형으로 이어진 집들을 도둑질하여 얻을 수 있는 가장 큰 금액을 구하는 문제이다. 난이도는 레벨4이며 다이나믹 프로그래밍을 통해 해결할 수 있다. 오늘의 문제 - 도둑질 문제 정보문제 키워드- DP난이도- Level 4 문제 요약모든 집은 원형으로 이어져 있으며, 연속된 두 집을 터는 경우 경보가 울린다.경보가 울리지 않고 도둑질을 할 때, 얻을 수 있는 가장 큰 금액을 구하여라. 문제 풀이 과정  원형으로 이어져 있으므로 첫번째 집을 터냐 마냐에 따라서 마지막 집을 털 수 있는지가 달라진다.따라서 첫번째 집을 터는 경우와 안 터는 경우로 나누어서 DP 배열 값들을 구해야 한다.dp[i] = (dp[i-2] + money[i], dp[i-1.. 2024. 6. 10.
99클럽 코테 스터디 20일차 TIL - DP (프로그래머스 '사칙연산') 항해99 코테 스터디 20일차 문제인 프로그래머스의 '사칙연산'은 덧셈과 뺄셈만으로 주어진 식에 괄호를 추가하여 구할 수 있는 최댓값을 반환하는 문제다. 난이도는 레벨4이며 DP를 통해 해결할 수 있다. 오늘의 문제 - 사칙연산 문제 정보문제 키워드- Dynamic Programming난이도- Level 4 문제 요약숫자와 연산자(+ 또는 -)가 번갈아 들어있는 리스트가 주어졌을 때, 괄호를 원하는 대로 추가하여 나올 수 있는 결과 중 최대값을 구하시오. 문제 풀이 과정  계속 헤매다가 도저히 떠오르지 않아서 좋은 해설글을 참고했다.가장 중요한 포인트는, 뺄셈 연산의 최댓값을 구하기 위해 최솟값도 가지고 있어야 한다는 부분이다.이를 이용해 모든 구간의 최댓값과 최솟값을 구해가면서 최종적으로 전체 식의 최.. 2024. 6. 8.
99클럽 코테 스터디 19일차 TIL - DP (프로그래머스 '정수 삼각형') 항해99 코테 스터디 19일차 문제인 프로그래머스의 '정수 삼각형'은 정수로 이루어진 삼각형을 한층씩 타고 내려가면서 맨 밑층까지 도달했을 때 구할 수 있는 가장 큰 합을 구하는 문제다. 난이도는 레벨3이며 동적계획법을 통해 해결할 수 있다. 오늘의 문제 - 정수 삼각형 문제 정보문제 키워드- DP난이도- Level 3 문제 요약한변의 길이가 N인, 정삼각형 모양의 배열이 주어진다. 각 원소의 값은 모두 0 이상의 9999 이하의 정수이다.맨 윗칸에서 한칸씩 아래로 내려가며 합을 구해가는데, 아래로 내려갈 때는 바로 왼쪽 대각선 또는 오른쪽 대각선으로만 이동할 수 있다. 이렇게 맨 밑층까지 내려갔을 때 구해진 합들 중 최대값을 구하여라. 문제 풀이 과정  이전까지의 합을 이용해 다음 합을 구할 수 있는,.. 2024. 6. 7.
반응형