본문 바로가기

4

[Java] BOJ 1744번 수 묶기 1744번: 수 묶기 길이가 N인 수열이 주어졌을 때, 그 수열의 합을 구하려고 한다. 하지만, 그냥 그 수열의 합을 모두 더해서 구하는 것이 아니라, 수열의 두 수를 묶으려고 한다. 어떤 수를 묶으려고 할 때, 위치에 www.acmicpc.net 풀이 정렬을 사용해서 최대값을 만들도록 하여 해결했습니다. 자세한 사항은 코드의 주석을 참고해주세요. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; public class Main { public static int N, answer; public static int[] arr; public .. 2021. 8. 30.
[Java] BOJ 1038번 감소하는 수 1038번: 감소하는 수 음이 아닌 정수 X의 자릿수가 가장 큰 자릿수부터 작은 자릿수까지 감소한다면, 그 수를 감소하는 수라고 한다. 예를 들어, 321과 950은 감소하는 수지만, 322와 958은 아니다. N번째 감소하는 수를 www.acmicpc.net 풀이 재귀함수를 이용해서 해결했습니다. 자세한 사항은 코드의 주석을 참고해주세요! 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Collections; import java.util.List; public class Main { public st.. 2021. 7. 7.
[Java] BOJ 11057번 오르막 수 11057번: 오르막 수 오르막 수는 수의 자리가 오름차순을 이루는 수를 말한다. 이때, 인접한 수가 같아도 오름차순으로 친다. 예를 들어, 2234와 3678, 11119는 오르막 수이지만, 2232, 3676, 91111은 오르막 수가 아니다. 수 www.acmicpc.net 풀이 0 1 2 3 4 5 6 7 8 9 합 1 자리 1 1 1 1 1 1 1 1 1 1 10 2 자리 10 9 8 7 6 5 4 3 2 1 55 3 자리 55 45 36 28 21 15 10 6 3 1 220 DP를 사용하여 위의 표처럼 계산을 진행하여 해결했습니다. 2자리일 때의 2로 시작하는 오르막 수는 2보다 크거나 같은 수들로 이뤄질 수 있으므로 2자리 바로 이전의 미리 구해둔 1자리일 때의 2 이상의 오르막 수 개수를.. 2021. 4. 22.
[Java] BOJ 10844번 쉬운 계단 수 10844번: 쉬운 계단 수 첫째 줄에 정답을 1,000,000,000으로 나눈 나머지를 출력한다. www.acmicpc.net 풀이 DP를 이용해서 풀었습니다. 2자리 이상의 숫자부터는 0이 뒤에 포함될 수 있으므로 j = 0부터 시작하고 총 개수를 셀때에도 0부터 세어야합니다. 코드 #include using namespace std; long long d[101][10]; long long mod = 1000000000LL; int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); int n; long long result = 0; cin >> n; for (int i = 1; i 2021. 4. 8.