摘要:而眾所周知,馬是要走日子格的。輸出格式輸出有一行,一個數(shù)表示走法數(shù)。那為了防止爆掉,我們每加完一條路的總步數(shù)之后就取一遍余。題目解法思路如上述,但是這里有一個我之前從來沒有注意過的問題,導(dǎo)致我一直只有分。三題解四題目鏈接過河馬
資源限制
時間限制:1.0s 內(nèi)存限制:256.0MB
問題描述
在那個過河卒逃過了馬的控制以超級超級多的走法走到了終點(diǎn)之后,這匹馬表示它不開心了……
于是,終于有一天,它也過河了!
由于過河馬積累了許多的怨念,所以這次它過了河之后,再也沒有什么東西可以限制它,它可以自由自在的在棋盤上馳騁。一開始,它是在一個n行m列棋盤的左下角(1,1)的位置,它想要走到終點(diǎn)右上角(n,m)的位置。而眾所周知,馬是要走日子格的??墒沁@匹馬在積累了這么多怨念之后,它再也不想走回頭路——也就是說,它只會朝向上的方向跳,不會朝向下的方向跳。
那么,這匹馬它也想知道,它想從起點(diǎn)跳到終點(diǎn),一共有多少種走法呢?
輸入格式
第一行兩個數(shù)n,m,表示一個n行m列的棋盤,馬最初是在左下角(1,1)的位置,終點(diǎn)在右上角(n,m)的位置。
輸出格式
輸出有一行,一個數(shù)表示走法數(shù)。由于答案可能很大,所以輸出答案除以1000000007所得的余數(shù)即可。
樣例輸入
4 4
樣例輸出
2
數(shù)據(jù)規(guī)模和約定
n<=100,m<=100
如圖,我們理一下思路,從左下角跳到右上角,用一個二維數(shù)組來存儲跳到每個點(diǎn)的總步數(shù)。我們來逆推,(其中2,3和3,2只可能是從1,1跳來的。),以黃點(diǎn)為例,他可能是A、B、C、D任意一點(diǎn)跳來的。然后,要判斷一下A、B、C、D在不在棋盤內(nèi)。
然后題目說答案可能很大,輸出答案除以1000000007所得的余數(shù)即可。那為了防止爆掉,我們每加完一條路的總步數(shù)之后就取一遍余。
題目解法思路如上述,但是這里有一個我之前從來沒有注意過的問題,導(dǎo)致我一直只有90分。那就是我一直習(xí)慣于在main函數(shù)內(nèi)聲明變量。。。
具體原因是在這篇博客里看的,詳情點(diǎn)擊傳送門。
其實(shí)就是說在main函數(shù)外面開一個數(shù)組,他的內(nèi)存分配在數(shù)據(jù)區(qū)里;如果在main函數(shù)內(nèi)部開數(shù)組,內(nèi)存分配在棧區(qū)內(nèi)。一般來說棧區(qū)的內(nèi)存是比較小的,所以平常開一些小一點(diǎn)的數(shù)組是沒問題的;但如果題目要求的數(shù)組比較大,那就會出現(xiàn)爆出的問題。
#include using namespace std;int n,m;int cb[105][105];int main(){ cin>>n>>m; cb[2][3] = cb[3][2] = 1; for(int i = 1;i <= n;i++) { for(int j = 1;j <= m;j++) { if(i-1 >=1 && j-2 >= 1) { cb[i][j] += cb[i-1][j-2]; cb[i][j] %= 1000000007; } if(i-2 >=1 && j-1 >= 1) { cb[i][j] += cb[i-2][j-1]; cb[i][j] %= 1000000007; } if(i-2 >=1 && j+1 <= m) { cb[i][j] += cb[i-2][j+1]; cb[i][j] %= 1000000007; } if(i-1 >=1 && j+2 <= m) { cb[i][j] += cb[i-1][j+2]; cb[i][j] %= 1000000007; } } } cout<<cb[n][m]; return 0;}
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/123334.html
摘要:問題描述審美的歷程課上有位學(xué)生,帥老師展示了幅畫,其中有些是梵高的作品,另外的都出自五歲小朋友之手。輸入格式第一行兩個數(shù)和,表示學(xué)生數(shù)和圖畫數(shù)接下來是一個的矩陣如果,表示學(xué)生覺得第幅畫是小朋友畫的如果,表示學(xué)生覺得第幅畫是梵高畫的。 問題描述 《審美的歷程》課上有n位學(xué)生,帥老師展示了m幅畫,其中有些是梵高的作品,另外的都出自五歲小朋友之手。老師請同學(xué)們分辨哪些畫的作者是梵高,但是老...
摘要:文章目錄一你應(yīng)該知道的藍(lán)橋杯含金量獲獎率高不高支持哪些編程語言二川川帶你體驗(yàn)藍(lán)橋杯省賽藍(lán)橋杯藍(lán)橋杯三個人感受一你應(yīng)該知道的藍(lán)橋杯如果你是計算機(jī)相關(guān)專業(yè),你不知藍(lán)橋杯就過不去了,我們來看看藍(lán)橋杯如何,不知道更應(yīng)該來了解下了。 ...
摘要:現(xiàn)在小明想統(tǒng)計有哪些帖子曾經(jīng)是熱帖。如果一個帖子曾在任意一個長度為的時間段內(nèi)收到不少于個贊,小明就認(rèn)為這個帖子曾是熱帖。以下行列代表一張海域照片。照片保證第行第列第行第列的像素都是海洋。 2018年4月1日愚人節(jié),我第一次參加了有關(guān)計算機(jī)算法類比賽藍(lán)橋杯,這篇算是經(jīng)驗(yàn)總結(jié)和題目回顧,水平有限,有不妥之處歡迎留言批評指正,也可以加QQ891465170交流~下面進(jìn)入正題: 第一題:第幾...
摘要:時間復(fù)雜度為,和分別是和的長度示例如下輸出輸出把從號位開始長度為的子串替換為上把的迭代器范圍的子串替換為示例如下 歡迎回到:遇見藍(lán)橋遇見你,不負(fù)代碼不負(fù)卿! 目錄 【補(bǔ)充】:常用頭文件及庫函數(shù) 1.#include sscanf() 和 sprintf() 2.#include 3.#...
摘要:傳送門題目描述實(shí)現(xiàn)一個算法得到烏托邦樹的高度介紹如下烏托邦樹每年經(jīng)歷個生長周期。每年夏天,它的高度都會增加米。對于一顆在春天開始時種下的高米的樹,問經(jīng)過指定周期后,樹的高度為多少。輸入描述輸入一個數(shù)字,表示指定周期。 ...
閱讀 767·2021-11-18 10:02
閱讀 2303·2021-11-15 18:13
閱讀 3313·2021-11-15 11:38
閱讀 3072·2021-09-22 15:55
閱讀 3744·2021-08-09 13:43
閱讀 2521·2021-07-25 14:19
閱讀 2521·2019-08-30 14:15
閱讀 3508·2019-08-30 14:15