題意大概時這個樣子的
因為是第一次筆試,太緊張了,實力也不夠,一時沒想起來,挺可惜的。當時感覺是列舉+dfs,但是沒過,後來覆盤的時候,驚覺dp+滾動陣列完美解決。
思路:可以呆的洞為1,不可以的為0,先全部初始化為1,橫座標代表洞的標號,縱座標代表第幾天。第j天被檢查的洞一定是0;如果是1號洞或是m號洞,則檢視前一天的二號洞或m-1號洞是0的話,1號洞或m號洞為0;如果前一天的i-1和i+1號洞都是0的話,第i號洞為0。
填表完成之後,遍歷陣列的最後一行,如果有1的話,代表兔子有可能不被抓住,如果全為0,則代表一定會被抓住。
**:
#include
#include
#include
using namespace std;
int main()
}scanf("%d
%d", &m, &n); //m是洞的編號,n是天數
//第i+1天檢查的洞的編號
for (int i = 0; i < n; i++)
scanf("%d", &a[i]);
//填表
for (int i = 0; i < n; i++)
}int
index = 0;
for (int j = 1; j <= m; j++)
}if (index == 1)
printf("no\n");
else
printf("yes\n");
return
0;}
雖然沒法再提交了,不過測試的幾個用例都是可以的了。 學生問題(三)
改錯的過程也是乙個成長的過程,下面簡單總結一下vb除錯過程中遇到的錯誤 一 敲完一半左右的窗體之後再除錯的,開啟的時候總是出現窗體發現衝突名稱 這個本不是問題,是我儲存工程的時候,窗體的位置儲存錯了導致的,就相當於引用了乙個窗體。所以最好的辦法就是把自己敲過的窗體整理到乙個資料夾裡。萬能的搜尋引擎還...
基礎問題(三)
1 c 標準規定類的大小不為0,空類的大小為1,當類不包含虛函式和非靜態資料成員時,其物件大小也為1。2 四種cast reinpreter cast 用法 reinpreter cast expression type id必須是乙個指標 引用 算術型別 函式指標或者成員指標。它可以把乙個指標轉換...
回溯問題三 迷宮問題
題意 0 0 0 0 1 1 0 0 0 1 1 0 1 0 1 1 0 1 1 1 1 0 0 1 1 上面矩陣表示乙個迷宮,其中的1表示牆壁,0表示可以走的路,現在編寫程式從 0,0 開始走從最後一行有出口處走出 解題方法 回溯法,與全排列 地圖塗色如出一轍,回溯與遞迴聯絡十分緊密,遞迴的過程包...