본문 바로가기

알고리즘101

백준 15988번 - 1, 2, 3 더하기 3 (Java) https://www.acmicpc.net/problem/15988 15988번: 1, 2, 3 더하기 3 각 테스트 케이스마다, n을 1, 2, 3의 합으로 나타내는 방법의 수를 1,000,000,009로 나눈 나머지를 출력한다. www.acmicpc.net 코드 : dp - topdown import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static final int MOD = 1_000_000_009; static long[] dp; public static void main(String[] args) throws IOException .. 2022. 3. 29.
백준 2225번 - 합분해 (Java) https://www.acmicpc.net/problem/2225 2225번: 합분해 첫째 줄에 답을 1,000,000,000으로 나눈 나머지를 출력한다. www.acmicpc.net 코드 : import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static final int MOD = 1_000_000_000; static long[][] memo; public static void main(String[] args) throws IOException { BufferedReader b.. 2022. 3. 28.
백준 1699번 - 제곱수의 합 (Java) https://www.acmicpc.net/problem/1699 1699번: 제곱수의 합 어떤 자연수 N은 그보다 작거나 같은 제곱수들의 합으로 나타낼 수 있다. 예를 들어 11=32+12+12(3개 항)이다. 이런 표현방법은 여러 가지가 될 수 있는데, 11의 경우 11=22+22+12+12+12(5개 항)도 가능하다 www.acmicpc.net 코드 : dp - topdown import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static final int MAX_INPUT = 100001; static int[] memo; public .. 2022. 3. 28.
백준 1912번 - 연속합 (Java 8) https://www.acmicpc.net/problem/1912 1912번: 연속합 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다. www.acmicpc.net 코드 : dp import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { static int[] memo; static int[] seq; public static void main(String[] args.. 2022. 3. 27.
백준 14002번 - 가장 긴 증가하는 부분 수열 4 (Java 8) https://www.acmicpc.net/problem/14002 14002번: 가장 긴 증가하는 부분 수열 4 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이 www.acmicpc.net 코드 : import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void main(S.. 2022. 3. 27.
백준 11053번 - 가장 긴 증가하는 부분 수열 (Java 8) https://www.acmicpc.net/problem/11053 11053번: 가장 긴 증가하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이 www.acmicpc.net 코드 : 1. dp - 탑다운 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { static int[] se.. 2022. 3. 26.