日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

动态规划(制表法)模板及应用

發布時間:2023/12/18 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 动态规划(制表法)模板及应用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • int cache[100][100] 初始化為全體為 -1,這樣在 cache 中存儲的可以是其他任意非負整數,也可以是布爾類型 0/1 (true/false),

1. 模板

int cache[2500][2500];// 初始化為 -1,memset(cache, -1, sizeof(cache)); int someObscureFunction(int y, int x){if (...) return ...;int& ret = cache[y][x];// 返回的是引用類型,這樣當后續對 ret 的修改也會直接反應在 cache 里。// 后面遞歸時調用自身得到的值都要賦給 retif (ret != -1) return ret;...return ret; }int main(int, char**){memset(cache, -1, sizeof(cache));return 0; }

2. 應用舉例

  • 棋盤類游戲,起點在左上角,棋盤每一個位置上標注的是在該點能向右和向下走動的距離,問其能否到達最右下角。

    int n; int board[100][100]; int cache[100][100];int jump_dp(int y, int x){ if (y >= n || x >= n) return cache[y][x] = 0; if (y == n-1 && x == n-1) return cache[y][x] = 1; int& ret = cache[y][x]; if (ret != -1) return ret; int jmpSz = board[y][x]; return cache[y][x] = jump_dp(y+jmpSz, x) || jump_dp(y, x+jmp_sz); }

轉載于:https://www.cnblogs.com/mtcnn/p/9423861.html

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的动态规划(制表法)模板及应用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。