본문 바로가기

Algorithm100

[백준] Silver I. 포도주 시식 https://www.acmicpc.net/problem/2156 사용 알고리즘다이나믹 프로그래밍 풀이import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;/* 테이블: d[i]: i번째 포도주를 선택했을 때 최대값 점화식 * d[i] = d[i-2] + s[i] * d[i] = d[i-3] + s[i-1] + s[i] * d[i] = d[i-1] */public class Main { static int n; static int [] s = new int[10002]; sta.. 2024. 6. 22.
[백준] Silver 1. 스티커 https://www.acmicpc.net/problem/9465  사용 알고리즘다이나믹 프로그래밍 풀이import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;/* 테이블: * d[0][i]: i번째 열에 도달했을 때 아무 스티커도 선택하지 않을때 최고점수 * d[1][i]: i번째 열에 도달했을 때 위쪽 스티커를 선택할 때 최고점수 * d[2][i]: i번째 열에 도착했을 때 아래쪽 스티커를 선택할 때 최고점수 점화식 * d[0][i]= Math.max(d[0][i-1], d[1].. 2024. 6. 19.
[백준] Silver II. 가장 큰 증가하는 부분 수열 https://www.acmicpc.net/problem/11055  사용 알고리즘다이나믹 프로그래밍  풀이 import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;/* 테이블: d[i]: i번째 원소를 방문할 때 증가하는 부분 수열의 최댓값 점화식: d[i] = max(d[i], d[j] + s[i]) */public class Main { static int n; static int [] s, d; public static void main(String[] args) throws IOException { .. 2024. 6. 17.
[백준] Silver II. 가장 긴 증가하는 부분 수열 https://www.acmicpc.net/problem/11053 사용 알고리즘다이나믹 프로그래밍 풀이 import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;/* 테이블: d[i]: i번째 원소를 마지막으로 가지는 수열의 길이 점화식: d[i] = max(d[i], d[j] + 1) */public class Main { static int n; public static void main(String[] args) throws IOException { BufferedReader br = new Buffer.. 2024. 6. 17.