https://www.acmicpc.net/board/view/64747
글 읽기 - 와인을 마시지 않는 경우가 왜 필요한가요?
댓글을 작성하려면 로그인해야 합니다.
www.acmicpc.net
https://st-lab.tistory.com/132
[백준] 2579번 : 계단 오르기 - JAVA [자바]
www.acmicpc.net/problem/2579 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점" data-og-host="www.acmicpc.net" data-og-source-url="https://www.acmicpc.net/proble..
st-lab.tistory.com
https://st-lab.tistory.com/135
[백준] 2156번 : 포도주 시식 - JAVA [자바]
www.acmicpc.net/problem/2156 2156번: 포도주 시식 효주는 포도주 시식회에 갔다. 그 곳에 갔더니, 테이블 위에 다양한 포도주가 들어있는 포도주 잔이 일렬로 놓여 있었다. 효주는 포도주 시식을 하려고
st-lab.tistory.com
https://www.acmicpc.net/board/view/77754
글 읽기 - 포도주 문제, 로직이 잘못된건가요?
댓글을 작성하려면 로그인해야 합니다.
www.acmicpc.net
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;
public class Main {
static int[] wine;
static Integer[] max = null;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
wine = new int[N+1];
max = new Integer[N+1];
for(int i = 1; i <= N; i++) {
wine[i] = Integer.parseInt(br.readLine());
}
System.out.println(dp(N));
}
static int dp(int n) {
if(n <= 0)
return 0;
if(max[n] == null) {
int a = dp(n-2) + wine[n];
int b = dp(n-3) + wine[n-1] + wine[n];
int c = dp(n-1);
if(b > a)
a = b;
if(a >= c)
max[n] = a;
else
max[n] = c;
}
return max[n];
}
}
'백준' 카테고리의 다른 글
[백준] 1931 회의실 배정 [자바] (0) | 2021.12.27 |
---|---|
[백준] 11053 가장 긴 증가하는 부분 수열 [자바] (0) | 2021.12.24 |
[백준] 1912 연속합 [자바] (0) | 2021.12.21 |
[백준] 2636 치즈 [자바] (0) | 2021.12.11 |
[백준] 9466 텀 프로젝트 [자바] (0) | 2021.12.08 |