728x90
1. 퇴사 (Silver 3)
[백준]
https://www.acmicpc.net/problem/14501
[깃허브]
ForCodeKata/baekjoon 문제집/14501 퇴사 at main · heesoo-park/ForCodeKata
알고리즘 문제 코드 저장소. Contribute to heesoo-park/ForCodeKata development by creating an account on GitHub.
github.com
배열의 시작을 1부터 시작하도록 하다보니 범위에서 계속 어긋나다가 맞췄다.
현재 위치를 기준으로 다음 위치의 dp 값을 계산한다.
dp[i + 1]의 값이 dp값을 누적하며 유지할 수 있도록 하기 위해서 계산한다.
작성한 코드는 다음과 같다.
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
int n = Integer.parseInt(br.readLine());
int[][] schedule = new int[n + 1][2];
int[] dp = new int[n + 2];
for (int i = 1; i <= n; i++) {
st = new StringTokenizer(br.readLine());
schedule[i][0] = Integer.parseInt(st.nextToken());
schedule[i][1] = Integer.parseInt(st.nextToken());
}
for (int i = 1; i <= n; i++) {
int nextDay = i + schedule[i][0];
if (nextDay <= n + 1) {
dp[nextDay] = Math.max(dp[nextDay], dp[i] + schedule[i][1]);
}
dp[i + 1] = Math.max(dp[i + 1], dp[i]);
}
System.out.print(dp[n + 1]);
}
}
2. 01타일 (Silver 3)
[백준]
https://www.acmicpc.net/problem/1904
[깃허브]
ForCodeKata/baekjoon 문제집/1904 01타일 at main · heesoo-park/ForCodeKata
알고리즘 문제 코드 저장소. Contribute to heesoo-park/ForCodeKata development by creating an account on GitHub.
github.com
앞서 풀었던 문제들 중에 비슷한 유형을 많이 풀어서 금방 해결했다.
그려보면 금방 패턴이 보이니 좋다...
작성한 코드는 다음과 같다.
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int[] dp = new int[1000001];
int n = Integer.parseInt(br.readLine());
dp[1] = 1;
dp[2] = 2;
for (int i = 3; i <= n; i++) {
dp[i] = (dp[i - 1] + dp[i - 2]) % 15746;
}
System.out.print(dp[n]);
}
}
반응형
'Java > Algorithm Problems' 카테고리의 다른 글
<백준> 24.07.11에 푼 문제들 (0) | 2024.07.11 |
---|---|
<백준> 24.07.10에 푼 문제들 (1) | 2024.07.10 |
<백준> 24.07.08에 푼 문제들 (0) | 2024.07.08 |
<백준> 24.07.04에 푼 문제들 (0) | 2024.07.04 |
<백준> 24.07.03에 푼 문제들 (1) | 2024.07.03 |