小 a 有一棵長的很奇怪的樹,他由 n 條鏈和 1 個點作為根構成,第 i 條鏈有 ai 個點,每一條鏈的一端都與根結點相連。
現在小 a 想知道,這棵長得奇怪的樹有多少非空的連通子樹,你只需要輸出答案對 998244353 取模的值即可
第一行乙個正整數 n
第二行 n 個正整數 a1…an
輸出答案對 998244353 取模後的值
示例1輸入
21 1
輸出1≤ n≤ 105
1≤ ai≤ 107
#include
#define ll long long
const ll mod =
998244353
;using namespace std;
intmain()
printf
("%lld\n"
,(s2 + s3)
% mod)
;}
挺有意思的乙個題目,記錄一下,s2表示當前鏈到達根節點或其他鏈節點的連通子樹的個數,s3表示當前鏈的內部可以構成的連通子樹的個數,不理解不妨到紙上模擬一下,這個是真的妙啊。 dfs求連通塊
遞迴是什麼?絕大部分人都會說 自己呼叫自己,剛開始我也是這樣理解遞迴的。確實沒錯,遞迴的確是自己呼叫自己。遞迴簡單的應用 編寫乙個能計算斐波那契數列的函式,也就是這樣 int fac int n 相信絕大部分人都能看懂這段 遞迴除了可以用自己呼叫自己這樣描述之外,還可以這樣表示遞迴函式 遞推式 邊界...
連通塊判重
統計連通塊種類和數量,數量比較容易使用洪氾即可快速完成,主要是統計種類。因此本文重點放在連通塊判重上。判重一般可以聯想到hash,難點也是hash函式的設計,如何避免衝突。t1 影象儲存 只有上下左右連通,平移重合則相似 hash函式設計 把dfs第幾步走的方向作為hash的引數,直接用string...
連通塊的題目
題目 氏 hw 果樹園 殘 亡 果樹園 東西南北方向 h w 區畫 分 區畫 植 氏 遺言 殘 果樹園 區畫単位 多 血縁者 分 區畫 東西南北 方向 區畫 同 種類 果物 植 場合 區畫 境界 分 1 大 區畫 扱 例 次 3 10 區畫 表 同 樹 區畫 間 境界 消 次 結局 10 個 區畫 ...