動態規劃:路徑類dp

路徑類dp

1.矩陣的最小路徑和_牛客題霸_牛客網

#include<iostream>
#include<cstring>
using namespace std;const int N = 510;
int f[N][N];
int n, m;int main()
{cin >> n >> m;memset(f, 0x3f3f3f, sizeof(f));f[0][1] = 0;for (int i = 1; i <= n; i++){for (int j = 1; j <= m; j++){int x; cin >> x;f[i][j] = min(f[i - 1][j], f[i][j - 1]) + x;}}cout << f[n][m];return 0;
}

2.「木」迷霧森林

#include<iostream>using namespace std;const int N = 3e3 + 10;
int n, m;
int a[N][N];
int f[N][N];//到i,j位置的方案數int main()
{cin >> n >> m;for (int i = 1; i <= n; i++){for (int j = 1; j <= m; j++){scanf("%d",& a[i][j]);}}//初始化f[n][0] = 1;for (int i = n; i >= 1; i--){for (int j = 1; j <= m; j++){if (a[i][j] == 1)continue;f[i][j] = (f[i + 1][j] + f[i][j - 1])%2333;}}cout << f[1][m] << endl;return 0;
}

3.P1002 [NOIP 2002 普及組] 過河卒 - 洛谷

標記馬的位置

#include<iostream>using namespace std;typedef long long LL;//統計結果是一個階乘,很大,要使用long long ,不然的話過不了int n, m, a, b;
const int N = 25;
LL f[N][N];//記錄從1 1到 i j的路徑的條數LL ret = 0;
//實現check函數
bool check(int i, int j)
{if (i == a && j == b)return true;//正好在馬的位置else if (abs(i - a) + abs(j - b) == 3 && i != a && j != b)return true;//距離3,并且不再十字線上return false;
}	int main()
{cin >> n >> m >> a >> b;//給出的是從0 0 開始的,而我們要的是從1 1開始的n++, m++, a++, b++;//初始化f[0][1] = 1;for (int i = 1; i <= n; i++){for (int j = 1; j <= m; j++){if (check(i, j))continue;//檢測是否會被馬吃到f[i][j] = f[i - 1][j] + f[i][j - 1];}}cout << f[n][m] << endl;return 0;
}

?4.P1004 [NOIP 2000 提高組] 方格取數 - 洛谷

#include<iostream>using namespace std;const int N = 15;
int f[N * 2][N][N];//兩個人同時出發,走相同的路徑長度s,一個在 i1 ,另一個在i2,此時的最大路徑和
int a[N][N];//記錄數據int main()
{int n; cin >> n;int x, y, w; while (cin >> x >> y >> w,x)//輸入x,y,z知道為0 ,就停止輸入{a[x][y] = w;}//遍歷for (int s = 2; s <= 2 * n; s++)//路徑長度在 2~2*n之間,從1 1開始。{for (int i1 = 1; i1 <= n; i1++)//遍歷i1{for (int i2 = 1; i2 <= n; i2++)//遍歷i2{int j1 = s - i1;//根據s算出縱坐標int j2 = s - i2;//根據s算出縱坐標if (j1 <= 0 || j1 > n || j2 <= 0 || j2 > n)//判斷縱坐標是否出界{continue;}int t = f[s - 1][i1][i2];//左左t = max(t, f[s - 1][i1 - 1][i2]);//上左t = max(t, f[s - 1][i1][i2 - 1]);//左上t = max(t, f[s - 1][i1 - 1][i2 - 1]);//上上if (i1 == i2)//是否在同一坐標,在,加一個即可f[s][i1][i2] = t + a[i1][j1];else//不再,兩個都要加f[s][i1][i2] = t + a[i1][j1]+a[i2][j2];}}}cout << f[n * 2][n][n] << endl;return 0;
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/899239.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/899239.shtml
英文地址,請注明出處:http://en.pswp.cn/news/899239.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

性能測試理論基礎-性能指標及jmeter中的指標

1、什么是性能測試 通過一定的手段,在多并發下情況下,獲取被測系統的各項性能指標,驗證被測系統在高并發下的處理能力、響應能力,穩定性等,能否滿足預期。定位性能瓶頸,排查性能隱患,保障系統的質量,提升用戶體驗。 2、什么樣的系統需要做性能測試 用戶量大,頁面訪問…

Debian,Ubuntu,設置/etc/vim/vimrc.tiny解決:上下左右變成ABCD,backspace退格鍵失效的問題

Debian,Ubuntu,用設置/etc/vim/vimrc.tiny解決:上下左右變成ABCD,backspace退格鍵失效的問題 Debian,Ubuntu, 默認的vi 在編輯模式下的上下左右變成ABCD , 退格鍵也失效 解決辦法1, 卸載重裝vim sudo apt remove vim; sudo apt install -y vim解決辦法2: 修改 /etc/vim/vimr…

Redis 單機16個db,集群只有一個的基本知識

目錄 前言1. 基本知識2. 配置 前言 &#x1f91f; 找工作&#xff0c;來萬碼優才&#xff1a;&#x1f449; #小程序://萬碼優才/r6rqmzDaXpYkJZF 爬蟲神器&#xff0c;無代碼爬取&#xff0c;就來&#xff1a;bright.cn Java基本知識&#xff1a; java框架 零基礎從入門到精通…

藍橋杯C++基礎算法-多重背包(優化)

這段代碼實現了一個多重背包問題的動態規劃解法&#xff0c;并且使用了二進制拆分&#xff08;或稱二進制優化&#xff09;來優化物品的數量處理。這種方法可以顯著減少狀態轉移的次數&#xff0c;提高算法的效率。以下是代碼的詳細思路解析&#xff1a; 1. 問題背景 給定 n 個…

FALL靶機攻略

1.下載靶機&#xff0c;導入靶機 下載地址&#xff1a;https://download.vulnhub.com/digitalworld/FALL.7z 開啟靶機。 2. 靶機、kali設置NAT網卡模式 3. kali掃描NAT網卡段的主機 kali主機 nmap掃描&#xff1a;nmap 192.168.92.1/24 判斷出靶機ip是192.168.92.133。開啟…

notepad++代碼查看器分享

文章目錄 &#x1f4dd; Notepad 簡介&#x1f527; 主要特點打開.c文件示意高亮語法展示全局替換功能展示 &#x1f4dd; Notepad 簡介 Notepad 是一款 免費的開源文本編輯器和源代碼編輯器&#xff0c;運行在 Windows 系統上。 它是對 Windows 自帶“記事本”的增強版本&…

詳細介紹Spring MVC的執行流程是怎么樣的?

Spring MVC 是 Spring 框架的一部分&#xff0c;用于構建 Web 應用程序。它的執行流程如下&#xff1a; 前端控制器&#xff08;DispatcherServlet&#xff09;接收請求&#xff1a;用戶通過瀏覽器發送 HTTP 請求到服務器&#xff0c;請求首先被前端控制器 DispatcherServlet 接…

MySQL中的內連接與外連接詳解:基礎與進階應用

文章目錄 表的內連和外連&#xff08;重點&#xff09;內連接外連接左外連接右外連接 簡單回顧 表的內連和外連&#xff08;重點&#xff09; 表的連接分為內連和外連 內連接 內連接實際上就是利用where子句對兩種表形成的笛卡兒積進行篩選&#xff0c;我們前面學習的查詢都…

動態內存分配與內存對齊

在C語言及其他低級編程語言中,內存管理是一個至關重要的主題。動態內存分配和內存對齊是確保程序高效和穩定運行的關鍵因素。本文將深入探討動態內存分配的原理,內存對齊的概念,并解釋它們如何共同影響程序的性能和資源利用。 一、動態內存分配簡介 1.1 動態內存分配的概念…

Milvus×最新版DeepSeek v3:對標Claude,本地數據五分鐘寫網站

前言 就在昨晚&#xff0c;DeepSeek v3推出了新版本V3-0324&#xff0c;再次一夜爆火。 雖然官方表示“這只是一次小升級”“API接口和使用方式不變”&#xff0c;但經過Zilliz的第一時間實測&#xff0c;我們發現無論是邏輯能力&#xff0c;還是編程能力&#xff0c;相較原本的…

6.M-LAG專題

M-LAG 的作用及特點 能不能簡單的描述以下M-LAG的工作原理? 跨設備鏈路聚合&#xff0c;將兩臺物理設備在聚合層面虛擬成一臺設備來實現跨設備鏈路聚合&#xff0c;從而提供設備級冗余保護和流量負載分擔 M-LAG(跨設備鏈路聚合)是基于IEEEP802.1A協議的跨設備鏈路聚合技術。…

每日免費分享之精品wordpress主題系列~DAY16

主題介紹&#xff1a; 今日在網上尋找wordpress主題的時候逛到了大叔的網站&#xff0c;趕腳這個主題蠻不錯的&#xff0c;于是百度一下&#xff0c;果然&#xff0c;這個主題很受歡迎。作為主題下載站追夢者也不甘落后&#xff0c;馬上就發布出來了&#xff0c;希望對你們有用…

LeeCode 383. 贖金信

給你兩個字符串&#xff1a;ransomNote 和 magazine &#xff0c;判斷 ransomNote 能不能由 magazine 里面的字符構成。 如果可以&#xff0c;返回 true &#xff1b;否則返回 false 。 magazine 中的每個字符只能在 ransomNote 中使用一次。 示例 1&#xff1a; 輸入&#…

目標檢測20年(一)

今天看的文獻是《Object Detection in 20 Years: A Survey》&#xff0c;非常經典的一篇目標檢測文獻&#xff0c;希望通過這篇文章學習到目標檢測的基礎方法并提供一些創新思想。 論文鏈接&#xff1a;1905.05055 目錄 一、摘要 1.1 原文 1.2 翻譯 二、介紹 三、目標檢測…

分割 / 合并大文件的簡單 python 代碼

使用方法 分割: python fs.py -n <分割后的文件個數> <要分割的文件> 合并: python fs.py -m <分割文件1> <分割文件2> ... 示例 PS C:\Users\Administrator\Desktop> python fs.py 使用方法: 分割: python fs.py -n <分割后的文件個數> &…

IDEA 快捷鍵ctrl+shift+f 無法全局搜索內容的問題及解決辦法

本篇文章主要講解IDEA、phpStrom、webStrom、pyCharm等jetbrains系列編輯器無法進行全局搜索內容問題的主要原因及解決辦法。 日期&#xff1a;2025年3月22日 作者&#xff1a;任聰聰 現象描述&#xff1a; 1.按下ctrlshiftf 輸入法轉為了繁體。 2.快捷鍵ctrlshiftr 可以全局檢…

樹狀數組【數據結構】

樹狀數組 簡介 1.應用 1.單點修改區間查詢 2.區間修改單點查詢(差分) 3.區間修改區間查詢(差分公式) 總而言之,就是動態維護前綴和。 2.樹狀結構圖 3.lowbit函數 我們知道&#xff0c;任何一個正整數都可以被表示成一個二進制數。如&#xff1a; ( 2 ) 10 ( 10 ) 2 (2)_{10…

pytorch+maskRcnn框架訓練自己的模型以及模型導出ONXX格式供C++部署推理

背景 maskrcnn用作實例分割時&#xff0c;可以較為精準的定位目標物體&#xff0c;相較于yolo只能定位物體的矩形框而言&#xff0c;優勢更大。雖然yolo的計算速度更快。 直接開始從0到1使用maskrCNN訓練自己的模型并并導出給C部署&#xff08;親測可用&#xff09; 數據標注…

PCL配置

1、下載 打開GitHub網站&#xff0c;搜索pcl&#xff0c;選擇第一個結果打開&#xff0c;按照下圖步驟操作 下載PCL預編譯安裝程序PCL-1.13.1-AllInOne-msvc2022-win64.exe 和要安裝的PCL組件&#xff08;例如pcl-1.13.1-pdb-msvc2022-win64.zip&#xff09; 2、安裝 雙擊 P…

大模型tokenizer重構流程

大模型tokenizer層再訓練&#xff08;選取Qwen7B試驗&#xff0c;重構token層&#xff09; 最近公司可能想訓練一個蛋白質大模型&#xff0c;需要了解一下大模型tokenizer重構&#xff0c;之后可能要訓練&#xff0c;這里做了一定的總結。 文章目錄 1. 首先查看Qwen2.5 7B基本…