題意:有乙個方格矩陣,矩陣邊界在無窮遠處。我們做如下假設:
a. 每走一步時,只能從當前方格移動一格,走到某個相鄰的方格上;
b. 走過的格仔立即塌陷無法再走第二次;
c. 只能向北、東、西三個方向走;
請問:如果允許在方格矩陣上走n步,共有多少種不同的方案。2種走法只要有一步不一樣,即被認為是不同的方案。
思路:糊里糊塗想也沒想寫了個dfs,居然在百練上過了。後來仔細一想,動歸或者說遞推很容易想啊。(當然資料如果很大的話要處理大數問題)
#include #include #include #include #include #define min(a,b) ((a)<(b)?(a):(b))
#define max(a,b) ((a)>(b)?(a):(b))
using namespace std;
#define inf 0x3fffffff
#define n 25
int flag[25][55],res=0,n;
int ori[3][2] = ,,};
void dfs(int d,int x,int y)
for(i = 0;i<3;i++) }}
int main()
百練4103(踩方格)
bailian.openjudge.cn practice 4103 4103 踩方格 總時間限制 1000ms 記憶體限制 65536kb 描述 有乙個方格矩陣,矩陣邊界在無窮遠處。我們做如下假設 a.每走一步時,只能從當前方格移動一格,走到某個相鄰的方格上 b.走過的格仔立即塌陷無法再走第二次 ...
百練 4103踩方格
描述 有乙個方格矩陣,矩陣邊界在無窮遠處。我們做如下假設 a.每走一步時,只能從當前方格移動一格,走到某個相鄰的方格上 b.走過的格仔立即塌陷無法再走第二次 c.只能向北 東 西三個方向走 請問 如果允許在方格矩陣上走n步,共有多少種不同的方案。2種走法只要有一步不一樣,即被認為是不同的方案。輸入允...
百練4982 踩方格
總時間限制 1000ms 記憶體限制 65536kb 描述有乙個方格矩陣,矩陣邊界在無窮遠處。我們做如下假設 a.每走一步時,只能從當前方格移動一格,走到某個相鄰的方格上 b.走過的格仔立即塌陷無法再走第二次 c.只能向北 東 西三個方向走 請問 如果允許在方格矩陣上走n步,共有多少種不同的方案。2...