原題鏈結
題意目前我們有乙個序列,在第i個點可以走到[i + 1, i + a[i]]區間內的任意一點(也就是說如果a[i]是0,路就走不通了)
現在要求我們將一些位置置零,使得從1走到n只有一條路徑。輸出最小置零數量,保證輸入有解。
思路\[f_ = min(f_, f_ + cnt)
\]其中cnt是從j + 1到i - 1所有的點中,能夠到達i的點的數量(就是說這些cnt個點都需要置零),由於我們是從i - 1到1的順序列舉的,所以cnt可以順帶記錄
ac**
#include #include #include #include using namespace std;
int ff[3005][3005], aa[3005];
int t, n;
int main()
} for (int i = 1; i <= n; ++i)
for (int i = 2; i <= n; ++i)
}for (int j = i + 1; j <= n; ++j)
}printf("%d\n", ff[n][n]);
} return 0;
}
cf1453F 二維DP 思維
原題鏈結 題意 目前我們有乙個序列,在第i個點可以走到 i 1,i a i 區間內的任意一點 也就是說如果a i 是0,路就走不通了 現在要求我們將一些位置置零,使得從1走到n只有一條路徑。輸出最小置零數量,保證輸入有解。思路 f i,j aj min fi,j aj fj,i 1 cnt f mi...
平面二維DP
馬攔過河卒 原題傳送門 這一到題目也是比較基礎的動態規劃,也可以理解為是遞推,主要是運用加法原理,思維難度不大。我們要求從 0,0 到 n,n 的方案總數,如果沒有馬的話,我們可以這麼做 設 f i j 為從 0,0 走到 i,j 的方案總數,我們知道一定是有上面和左邊走來,所以只需要累加上面和左邊...
完美序列(二維dp)
題目描述 已知乙個長度為l的序列 b1,b2,b3,bl 1 b1 b2 b3 bl n 若這個序列滿足每個元素是它後續元素的因子,換句話說就是對於任意的i 2 i l 都滿足bi bi 1 0 其中 代表求餘 則稱這個序列是完美的。你的任務是對於給定的n和l,計算出一共有多少序列是完美序列。由於答...