본문 바로가기

upcurve631

백준 2579 계단 오르기 (JAVA 자바 풀이) 백준 2579 계단 오르기 (JAVA 자바 풀이) 📌 문제 각 계단에 쓰여 있는 점수가 주어질 때 이 게임에서 얻을 수 있는 총 점수의 최댓값을 구하는 프로그램을 작성하시오. ⚔ 입력 입력의 첫째 줄에 계단의 개수가 주어진다. 둘째 줄부터 한 줄에 하나씩 제일 아래에 놓인 계단부터 순서대로 각 계단에 쓰여 있는 점수가 주어진다. 계단의 개수는 300이하의 자연수이고, 계단에 쓰여 있는 점수는 10,000이하의 자연수이다. 📣 출력 첫째 줄에 계단 오르기 게임에서 얻을 수 있는 총 점수의 최댓값을 출력한다. 💎 문제 분석 점화식은 생각보다 간단한데 100%에서 계속 런타임 오류가 났다. 입력 범위가 작은 경우 배열 초기화를 N+1로 할 경우 처리를 못하는 에러가 발생한다(e.g. 1 -> 2,3에 대한 에.. 2022. 12. 11.
백준 1932 정수 삼각형 (JAVA 자바 풀이) 백준 1932 정수 삼각형 (JAVA 자바 풀이) 📌 문제 위 그림은 크기가 5인 정수 삼각형의 한 모습이다. 맨 위층 7부터 시작해서 아래에 있는 수 중 하나를 선택하여 아래층으로 내려올 때, 이제까지 선택된 수의 합이 최대가 되는 경로를 구하는 프로그램을 작성하라. 아래층에 있는 수는 현재 층에서 선택된 수의 대각선 왼쪽 또는 대각선 오른쪽에 있는 것 중에서만 선택할 수 있다. 삼각형의 크기는 1 이상 500 이하이다. 삼각형을 이루고 있는 각 수는 모두 정수이며, 범위는 0 이상 9999 이하이다. ⚔ 입력 첫째 줄에 삼각형의 크기 n(1 ≤ n ≤ 500)이 주어지고, 둘째 줄부터 n+1번째 줄까지 정수 삼각형이 주어진다. 📣 출력 첫째 줄에 합이 최대가 되는 경로에 있는 수의 합을 출력한다. 💎.. 2022. 12. 10.
백준 1149 RGB 거리 (JAVA 자바 풀이) 백준 1149 RGB 거리 (JAVA 자바 풀이) 📌 문제 집은 빨강, 초록, 파랑 중 하나의 색으로 칠해야 한다. 각각의 집을 빨강, 초록, 파랑으로 칠하는 비용이 주어졌을 때, 아래 규칙을 만족하면서 모든 집을 칠하는 비용의 최솟값을 구해보자. ⚔ 입력 첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나 같은 자연수이다. 📣 출력 첫째 줄에 모든 집을 칠하는 비용의 최솟값을 출력한다. 💎 문제 분석 N의 최대값이 10,000,000에 시간제한은 1초이므로 반복문을 사용하면 100% 시간 초과가 날 것이고 일일히 구하는 것이 아니라 숫자를 .. 2022. 12. 9.
백준 1912 연속 합 (JAVA 자바 풀이) 백준 1912 연속 합 (JAVA 자바 풀이) 📌 문제 n개의 정수로 이루어진 임의의 수열이 주어진다. 우리는 이 중 연속된 몇 개의 수를 선택해서 구할 수 있는 합 중 가장 큰 합을 구하려고 한다. 단, 수는 한 개 이상 선택해야 한다. 예를 들어서 10, -4, 3, 1, 5, 6, -35, 12, 21, -1 이라는 수열이 주어졌다고 하자. 여기서 정답은 12+21인 33이 정답이 된다. ⚔ 입력 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다. 📣 출력 첫째 줄에 답을 출력한다. 💎 문제 분석 sum 배열로 dp[]를 이용하는 것이 핵심이다. 💡 코드 구현 im.. 2022. 12. 9.
백준 9461 파도반 수열 (JAVA 자바 풀이) 백준 9461 파도반 수열 (JAVA 자바 풀이) 📌 문제 N이 주어졌을 때, P(N)을 구하는 프로그램을 작성하시오. ⚔ 입력 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, N이 주어진다. (1 ≤ N ≤ 100) 📣 출력 각 테스트 케이스마다 P(N)을 출력한다. 💎 문제 분석 int로 선언시 틀리는 점에 주의하자. 💡 코드 구현 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { private static long[] dp; public static void main(String[] args) throws.. 2022. 12. 9.