地道戰是在抗日戰爭時期,在華北平原上抗日軍民利用地道打擊日本侵略者的作戰方式。地道網是房連房、街連街、村連村的地下工事,如下圖所示。
我們在回顧前輩們艱苦卓絕的戰爭生活的同時,真心欽佩他們的聰明才智。在現在和平發展的年代,對多數人來說,探索地下通道或許只是一種娛樂或者益智的遊戲。本實驗案例以探索地下通道迷宮作為內容。
假設有乙個地下通道迷宮,它的通道都是直的,而通道所有交叉點(包括通道的端點)上都有一盞燈和乙個開關。請問你如何從某個起點開始在迷宮中點亮所有的燈並回到起點?
樣例圖的測試資料:
8 10 1
1 22 6
6 44 7
7 83 4
4 51 5
3 51 7
深度遍歷的變形,只要每條分支遍歷到盡頭時將其節點在入棧一次即可
#include
#include
#include
#include
#include
#include
using
namespace std;
int vis[
1001]=
;set<
int> s;
vector<
int> v[
1001
],v2;
void
dfs(
int s)}}
intmain()
for(
int i=
1;i<=n;i++
)fill
(vis+
1,vis+n+1,
0);dfs
(s);
for(
int i=
0;isize()
-1;i++
)printf
("%d"
,v2[v2.
size()
-1])
;for
(int i=
1;i<=n;i++)}
return0;
}
PTA 7 5 冒泡法排序
將n個整數按從小到大排序的氣泡排序法是這樣工作的 從頭到尾比較相鄰兩個元素,如果前面的元素大於其緊隨的後面元素,則交換它們。通過一遍掃瞄,則最後乙個元素必定是最大的元素。然後用同樣的方法對前n 1個元素進行第二遍掃瞄。依此類推,最後只需處理兩個元素,就完成了對n個數的排序。本題要求對任意給定的k 輸...
PTA 7 5 堆的路徑
本題主要考察堆的性質 建堆,向堆中插入資料 將一系列給定數字插入乙個初始為空的小頂堆h。隨後對任意給定的下標i,列印從h i 到根結點的路徑。每組測試第1行包含2個正整數n和m 1000 分別是插入元素的個數 以及需要列印的路徑條數。下一行給出區間 10000,10000 內的n個要被插入乙個初始為...
PTA 7 5 裝箱問題(20 分)
7 5 裝箱問題 20 分 假設有n 項物品,大小分別為s 1 s 2 s i s n 其中s i 為滿足1 s i 10 0的整數。要把這些物品裝入到容量為100的一批箱子 序號1 n 中。裝箱方法是 對每項物品,順序掃瞄箱子,把該物品放入足以能夠容下它的第乙個箱子中。請寫乙個程式模擬這種裝箱過程...