建蘭情人節專賽 一二題解題報告

2021-08-15 15:54:40 字數 1566 閱讀 5484

她非常喜歡梧桐樹,這些樹種植在一片園子裡。

在園子裡,每一棵樹可以產生2棵樹苗。這些樹和樹苗之間的關係我們採用用乙個二叉樹來表示。總共有n棵樹,也就是有n個節點,每個節點的度只能是0或者2。同時,二叉樹的高度是已經定好的值是k,根節點的高度是1。例如,當n=5,k=3時,只有兩種不同形態的種植樹。

演算法:動態規劃

雖然很難看出來這是動態規劃,但是我們仔細看題目,我們可以發現一組n和k是唯一的。所以對應的形態是固定的。每一棵二叉樹都是由它的子樹來決定它的形態的數量。換句話說,就是我們求出了子樹的形態,我們就可從兩棵樹的數量得到答案。

既然是動態規劃,我們就定義狀態,因為是三個變數,我們設定乙個而且陣列,用f[i][j]表示i的節點,j的高度可以得到的最大的數量。

轉移方程:f[i][j]=(f[i][j]+f[k][j-1]*f[i-k-1][j-1])我們就是要列舉乙個k,根據乘法原理,算出左右子樹的數量,再相乘,得到答案。

初始:f[1][i]都為1,因為只有乙個點,所以只有一種形態。

答案:f[n][k]-f[n][k-1]

小a來到了乙個城市,這個城市有n個可疑的地點,在這個地點可能會有她的存在。每個地方的地方都是1--n,其中有一些地方之間會有一條有向邊連線,而且圖沒有環。初始的時候,小a在編號1的地方,他的重點是n號點的位置。因為他要查詢她到底在**,所以他想盡量多的通過一些地點,來找她。雖然是為愛而獻身,但是小a還是有一定的精力,設為t。 現在請你計算從起點到終點中途最多可以查詢多少個地方(包括起點和終點)。在不超過t的情況下,同時輸出一條字典序最小的路線,中間每個編號用乙個空格空開。如果沒有路徑符合要求,那麼就輸出-1。

4 3 13

1 2 5

2 3 7

2 4 8

1 2 4

演算法:圖論

首先我們看到資料範圍,因為n≤5000,得有一種意識:鄰接矩陣開不下,我們需要掛鍊錶。

然後我們設定兩個陣列,f[i][j]和g[i][j],f表示i到j的最短距離,然後g記錄路徑。

然後進行搜尋,搜尋頭上的點,然後計算的時候在把路徑記錄下來,在遞迴輸出路徑就可以了。

掛鍊錶:

搜尋:

遞迴輸出:

主程式:

2014 8 3情人節歡樂賽 Benny的農場

benny的農場 farm.pas c cpp 時間限制 1s。空間限制 128mb 題目描述 benny有一片農田需要灌溉。農田的形狀為矩形,並被分為許多小塊。每一塊中都有一些水管。共有11種型別的管道,如右圖所示標號為a到k。benny有農場的地圖,地圖表明各小塊中管道的形狀。例如 那麼,整個農...

天梯賽習題 L1 035 情人節

時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 陳越以上是朋友圈中一奇葩貼 2月14情人節了,我決定造福大家。第2個讚和第14個讚的,我介紹你倆認識 咱三吃飯 你倆請 現給出此貼下點贊的朋友名單,請你找出那兩位要請客的倒霉蛋。輸入格式 ...

L1 035 情人節 15分 題解

以上是朋友圈中一奇葩貼 2月14情人節了,我決定造福大家。第2個讚和第14個讚的,我介紹你倆認識 咱三吃飯 你倆請 現給出此貼下點贊的朋友名單,請你找出那兩位要請客的倒霉蛋。輸入按照點讚的先後順序給出不知道多少個點贊的人名,每個人名佔一行,為不超過10個英文本母的非空單詞,以回車結束。乙個英文句點....