👉프로그래머스 체육복 문제문제 설명전체 학생 수 n명이 있고, 일부 학생은 체육복을 도난당했다.또 일부 학생은 여벌 체육복을 가지고 있다.체육복을 도난당한 학생은 바로 앞번호나 바로 뒷번호 학생에게만 체육복을 빌릴 수 있다.즉, i번 학생은 아래 학생에게만 빌릴 수 있다.i - 1번 학생i + 1번 학생체육복을 빌려줄 수 있는 학생은 여벌 체육복을 가진 학생뿐이고, 여벌 체육복은 한 벌만 빌려줄 수 있다.이때 체육 수업을 들을 수 있는 학생의 최댓값을 구해야 한다.문제 유형 분류이 문제는 그리디 문제이다.체육복을 도난당한 학생을 앞번호부터 확인하면서, 빌릴 수 있는 학생이 있으면 바로 빌리는 방식으로 접근할 수 있다.이 문제에서 중요한 점은 앞번호부터 차례대로 처리해야 한다는 것이다.예를 들어 도난당한..
등굣길 문제를 두 번째로 풀면서 DP 접근 자체는 맞게 잡았다.dp[y][x]에 시작점부터 (x, y)까지 이동하는 경우의 수를 저장하고, 위쪽과 왼쪽 값을 더하는 방식으로 구현했다.다만 처음 제출한 코드에서는 구현 과정에서 몇 가지를 놓쳤다. 👉등굣길 - 첫풀이(문제포함)1. 웅덩이 좌표 순서를 반대로 사용했다문제에서 puddles는 [x, y] 형태로 주어진다.하지만 DP 배열은 행, 열 순서로 사용했기 때문에 dp[y][x] 형태가 되어야 한다.처음에는 아래처럼 작성했다.dp[puddle[0]][puddle[1]] = -1;하지만 올바른 코드는 아래와 같다.dp[puddle[1]][puddle[0]] = -1;배열을 new int[n + 1][m + 1]로 만들었기 때문에,첫 번째 인덱스는 세로 ..

명이나물 라이브러리