在如下8*6的矩陣中,請計算從A移動到B一共有____種走法。要求每次只能向上或向右移動一格,並且不能經過P。
轉載別人的,供自己學習
【組合數學+動態規劃】在如下8*6的矩陣中,請計算從A移動到B一共有____種走法。要求每次只能向上或向右移動一格,並且不能經過P。
在如下8*6的矩陣中,請計算從A移動到B一共有__種走法。要求每次只能向上或向右移動一格,並且不能經過P。
A:456
B:492
C:568
D:626
E:680
F:702
解析:
8*6的矩陣,從左下角A到右上角B,一共需要走12步,其中5步向上,7步向右,因此總的走法一共有C(12,5)=792種,但題目規定不能經過P,因此需要減去經過P點的走法。
經過P的路徑分為兩部分,從A到P,從P到B。
同理,從A到P的走法:C(6,2)=15;
同理,從P到B的走法:C(6,3)=20;
因此從A到B經過P點的走法有15*20=300種,
所以從A到B不經過P點的走法有792-300=492種。
這題其實可以用程式算出來
簡單的動態規劃
dp[i][j] = dp[i][j-1] + dp[i-1][j];
程式碼如下:
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <string>
using namespace std;
int main()
{
int dp[100][100] = {0};
for(int i = 1; i <= 6; i++)
for(int j = 1; j <= 8; j++)
dp[i][j] = dp[i-1][j] + dp[i][j-1];
int dp2[100][100] = {0};
dp2[0][1] = 1;
for(int i = 1; i <= 4; i++)
for(int j = 1; j <= 4; j++)
dp2[i][j] = dp2[i-1][j] + dp2[i][j-1];
cout<<dp[6][8] - dp2[4][4] * dp[3][5]<<endl;
return 0;
}
相關文章
- 脈動陣列在二維矩陣乘法及卷積運算中的應用陣列矩陣卷積
- 矩陣中移動的最大次數.18076762矩陣
- 矩陣計算矩陣
- 計算矩陣的秩矩陣
- 深度學習中需要的矩陣計算深度學習矩陣
- 移動計算——網路經濟的春天 (轉)
- Java中計算移動平均線Java
- Numpy中的矩陣運算矩陣
- 點陣的動畫顯示之左右移動動畫
- latex 中矩陣寫法矩陣
- 矩陣:如何使用矩陣操作進行 PageRank 計算?矩陣
- 桌面圖示無法拖動或自由移動的解決辦法
- Js陣列物件的屬性值升序排序,並指定陣列中的某個物件移動到陣列的最前面JS陣列物件排序
- Eigen:矩陣計算簡單用法(一)矩陣
- 矩陣空間採用 new 動態申請,儲存在指標中矩陣指標
- MATLAB(6)矩陣和向量運算Matlab矩陣
- 移動雲端計算展望
- 矩陣乘法的運算量計算(華為OJ)矩陣
- win10電腦中滑鼠自動向下或向上滾動怎麼解決Win10
- Bert結構手動矩陣運算實現(Transform)矩陣ORM
- 習題8-3 陣列迴圈右移 及 練習7-8 方陣迴圈右移陣列
- 一文了解網路安全中的橫向移動
- Gram格拉姆矩陣在風格遷移中的應用矩陣
- OpenGL光照計算中法線矩陣原理及推到過程矩陣
- 動手做一個酷炫(並不)的計算器(一)
- 協方差矩陣概念及計算矩陣
- [譯] Dart中可空性語法的定案: a?[b] 或 a?.[b]Dart
- 移動邊緣計算中的安全問題現狀
- Apache Flink 在移動雲實時計算的實踐Apache
- 移動UI設計中的7種主要導航模式UI模式
- Django 從啟動到請求到響應全過程分析-入門版Django
- eMarketer:移動計算驅動的內容消費
- Tomcat啟動過程(一):從BootStrap到EndPonitTomcatboot
- 非 A 或 B 等價於非 A 且非 B
- matlab計算含有未知數的矩陣Matlab矩陣
- 計算機那些事(2)——從開機到 Linux 啟動過程詳解計算機Linux
- Julia的矩陣運算矩陣
- Python將表格檔案中某些列的資料整體向上移動一行Python