状态压缩动态规划

This commit is contained in:
2024-06-09 14:40:50 +08:00
parent 3f7ee8e8c0
commit 64a7875d1d
6 changed files with 100 additions and 9 deletions

View File

@@ -1,17 +1,17 @@
#include <iostream>
using namespace std;
const int MAXN = 105;
int dp[MAXN], arr[MAXN];
int dp[MAXN], obstacle[MAXN];
int main() {
int n;
cin >> n;
for (int i = 1; i <= n; i++) {
cin >> arr[i];
cin >> obstacle[i];
dp[i] = n - 1;
}
dp[1] = 0;
for (int i = 1; i <= n; i++) {
for (int j = i + 1; j <= i + arr[i] && j <= n; j++) {
for (int j = i + 1; j <= i + obstacle[i] && j <= n; j++) {
dp[j] = min(dp[j], dp[i] + 1);
}
}