馬蘭過河卒

2022-10-08 17:12:25 字數 918 閱讀 3992

二、設計思想

首先將所有點設定為可通行,將控制點設定為不可通行。因為只可以向下或者向右行走,所以要想到達目標點只需要到達其左邊的點或者上邊的點,以此類推,計算從起點到達中間任何乙個點的路徑條數,並用陣列tripnum儲存到達這個點的路徑條數。

三、**

#include#include

using

namespace

std;

intmain()

;

int b[9] = ;

int map[16][16] = ;

long

long tripnum[16][16] = ;

intn, m, x, y;

scanf_s(

"%d %d %d %d

", &n, &m, &x, &y);

for (int i = 0; i < 16; i++)

for (int j = 0; j < 16; j++)

map[i][j] = 1

;

for (int i = 0; i < 9; i++)

for (int i = 0; i < 16; i++)

else

break

; }

for (int i = 0; i < 16; i++)

else

break

; }

for (int i = 1; i <= n; i++)

}printf(

"%lld

", tripnum[n][m]);

return0;

}

view code

馬蘭過河卒問題

大體意思就是給你圖的大小,給你乙個棋子,一次只能往下走一步或者往右走一步,還有一些點是不能走的,然後讓你輸出從0.0這個點到達對角線上的點 的路徑數。具體思路 首先講不能走的點單獨標記出來,然後採用遍歷的方法求出從第乙個點到最後乙個點的路徑數。include using namespace std ...

過河卒演算法

過河卒基本思想 利用動態規劃轉空間為時間,利用動態規劃一般方法,把資料記錄下來,同時走兩條路線,只要不重合就好 include include include include define maxx a,b,c,d max max a,b max c,d using namespace std in...

過河卒 遞推

description 如圖,a 點有乙個過河卒,需要走到目標 b 點。卒行走規則 可以向下 或者向右。同時在棋盤上的任一點有乙個對方的馬 如上圖的c點 該馬所在的點和所有跳躍一步可達的點稱為對方馬的控制點。例如上圖 c 點上的馬可以控制 9 個點 圖中的p1,p2 p8 和 c 卒不能通過對方馬的...