80. 백준 : 스티커
·
4학년/알고리즘 문제풀이
🔷 문제 설명각각의 스티커들에 점수가 할당되어 있고, 변을 마주하는 스티커를 선택할 수 없다.스티커들을 고를 때 최대 점수가 되게 하는 방법은? 📌 초기 구상1. 각 행을 지나면서 최댓값을 담아둔다. = DP로 문제를 풀면 될 것 같다. 2. 마지막 열에 있는 값들 중 최댓값을 선택한다. 중요한 건 선택 방법인데,다른 행 , 바로 i-1열에서 선택하느냐 혹은 다른 행 , 바로 i-2열에서 선택하느냐 차이로 정했다. dp[0][0] 부분에는 값이 없기 때문에 연산이 조금씩 밀린다. 기본적인 원리는 이렇다.이렇게 두 줄을 받았을 때,임의의 위치 i번째 ( i>1) 의 최댓값은다른 행의 i번째 or i-1번째까지 가는 최댓값 + 본인 이다.1) 다른 행인 이유 : 접한 면이면 선택하지 못하기 때문에..
72. 백준 : 구간 합 구하기 5
·
4학년/알고리즘 문제풀이
(x1,y1) ~ (x2,y2) 까지의 합을 구하는 문제 처음엔 단순하게 주어질 때마다 반복문으로 다 돌까했는데,그렇게 쉽게 풀리는 문제가 아니다. 타임오버난다. 📌초기 구상일단 연산은 최소한으로 해야한다.따라서1) dp 테이블에 입력받은 표에 대해서 ' 현재 위치까지 모두 합했을 때의 값 ' 을 한 번에 다 계산해둔다.2) 입력 받은 위치에 대해서 '값에 접근하여 연산만 해준다.' O(1) 이렇게 표가 있다고 해보자. 일단 각 위치별로 모두 합한 값을 만든다. ( 3번 행, 2번 열 )에 있는 10은dp 테이블에서는 1+2+5+6+9+10 = 33이 될 것이다.dp 테이블 업데이트 먼저 보자. dp 테이블에서 검은색 위치를 구하려면빨간색 네모(dp) + 파란색 네모(dp) - 초록색 네모(dp) ..