永琳的竹林迷徑(path)

2022-08-01 20:09:10 字數 2192 閱讀 7703

竹林可以看作是乙個n 個點的樹,每個邊有乙個邊長wi,其中有k 個關鍵點,永琳需要破壞這些關鍵點才能走出竹林迷徑。

然而永琳打算將這k 個點編號記錄下來,然後隨機排列,按這個隨機的順序走過k 個點,但是兩點之間她只走最短路線。初始時永琳會施展一次魔法,將自己傳送到選定的k 個點中隨機後的第乙個點。

現在永琳想知道,她走過路程的期望是多少,答案對998244353 取模。

注意,如果對期望不理解,題目最後有詳細解釋,請自行閱讀。

第一行乙個數case,表示測試點編號。(樣例的編號表示其滿足第case 個測試點的性質)

下一行乙個n,表示樹的點數。

下面 n-1 行,每行三個數ui,vi,wi,表示一條邊連線ui和vi,長度為wi。

下面一行乙個數k,表示關鍵點數。

下面一行k 個數,表示k 個關鍵點的編號。

一行乙個數,表示答案(對998244353 取模)。

資料範圍

對於 100%的資料,保證1≤wi≤1041≤wi≤104。

測試點編號nk

特殊性質

1≤10≤10

=1=1無2

3≤5≤545

≤1000≤1000

≤7≤767

≤105≤105

≤8≤889

10≤16≤16

1112

13≤105≤105

1415

1617

18≤106≤106

≤106≤106

是一條鏈

192021無

2223

2425

【可能會用到的知識】

關於期望:

期望的定義:離散隨機變數的一切可能值與其對應的概率p 的乘積之和稱為數學期望。

即: e(x)=∑p(x=k)×val(k)e(x)=∑p(x=k)×val(k)

其中e(x)是期望,p(x=k)是 x=k 發生的概率。

【提示】

讀入資料較大,請使用快速的讀入方式。

solution

本題求有序走完乙個排列的期望長度。

考慮乙個點i之前是j的貢獻:dist[i]+dist[j]-2*dist[lca]

算出所有點的dist的貢獻,lca的貢獻則做一次類似樹形dp的東西

乙個點不同子樹互相走的數量就是它作lca的貢獻

#include#include#include#include#include#include#define maxn 1000006

#define mod 998244353

#define ll long long

using namespace std;

int n,num,head[maxn],s[maxn],flag[maxn],t1,t2,t3,tot;

int te,size[maxn];

ll ans,sum,ny2,ny,d[maxn];

struct nodee[maxn*2];

int read()

void lj(int t1,int t2,int t3)

void dfs(int k,int fa,ll dist)

size[k]+=flag[k];

}void dp(int k,int fa)

ll cnt=0;

for(int i=head[k];i;i=e[i].nex)

ans=(ans-2*d[k]%mod*cnt%mod)%mod;

if(flag[k])

}ll work(ll a,int num)

return ans;

}int main()

num=read();

for(int i=1;i<=num;i++)

dfs(1,0,(ll)0);

ny2=work(2,mod-2);

for(int i=1;i<=num;i++)sum+=d[s[i]];

for(int i=1;i<=num;i++)

dp(1,0);ans%=mod;

ans=ans*work(num,mod-2);

ans=(ans%mod+mod)%mod;

printf("%lld\n",ans);

return 0;

}

唐門的竹林偽原創工具

摘要 偽原創工具 2012年06月19日偽原創工具以前我很不理解還有測試架構師這個職位,下午1700,她正和幾個組織今晚的泡吧偽原創工具點評,讓我深有體會,如果乙個專案中有這樣的角色,偽原創工具長期以來一直佔據著排行榜榜首,小周飛快的敲擊著鍵盤,竹林,網路遊戲劍俠世界偽原創工具。第一 這些都是痛苦的...

資訊學奧賽C 語言 愛吃桃子的琳琳

題目描述 彥彥作為琳琳最好的朋友,她當然知道琳琳很愛吃桃子啦,於是,她們去了果園摘桃子,一棵果樹上有n個桃子,可是,琳琳是乙個很挑剔的人,她只摘重量大於k的大桃子,彥彥剛剛學資訊學,不知道如何是好,所以她希望你幫她編個程式,求出一共可以吃到多少個桃子,並求出可以吃到的桃子的總重量和。輸入 第一行輸入...

迷之自信的Single User Mode

alter database set single user 對於任何dba來說,恐怕都不陌生。在我們需要獲取資料庫獨佔訪問權來做一些資料庫緊急維護的時候,這可能是大多數dba的首選,但它真的可以實現 獨佔訪問權 嗎?這次我們聊聊single user是如何重新整理我們認知的 華麗麗的分割線 實驗目...