51Nod 1632 B君的連通 遞迴,快速冪

2021-09-22 13:42:54 字數 1097 閱讀 6698

1632 b君的連通

基準時間限制:1 秒 空間限制:131072 kb 分值: 20

難度:3級演算法題

b國擁有n個城市,其交通系統呈樹狀結構,即任意兩個城市存在且僅存在一條交通線將其連線。a國是b國的敵國企圖秘密發射飛彈打擊b國的交通線,現假設每條交通線都有50%的概率被炸毀,b國希望知道在被炸毀之後,剩下聯通塊的個數的期望是多少?

input

乙個數n(2<=n<=100000)

接下來n-1行,每行兩個數x,y表示一條交通線。(1<=x,y<=n)

資料保證其交通系統構成一棵樹。

output

一行乙個數,表示答案乘2^(n-1)後對1,000,000,007取模後的值。
input示例

3

1 21 3

output示例

8
分析:

下面給出ac**:

1 #include 2

using

namespace

std;

3 typedef long

long

ll;4

const ll mod=1000000007;5

inline ll read()615

while(ch>='

0'&&ch<='9'

)1620return x*f;21}

22ll n,x,y;

23 ll a[100010]=;

24ll qpow(ll x,ll p)

2532

return

ret;33}

34int

main()

3543

for(ll i=2;i<=100001;i++)

44 a[i]=2*a[i-1]+qpow(2,i-2),a[i]%=mod;

45 cout

46return0;

47 }

51nod 1632B君的連通

1632 b君的連通 基準時間限制 1 秒 空間限制 131072 kb 分值 20 難度 3級演算法題 b國擁有n個城市,其交通系統呈樹狀結構,即任意兩個城市存在且僅存在一條交通線將其連線。a國是b國的敵國企圖秘密發射飛彈打擊b國的交通線,現假設每條交通線都有50 的概率被炸毀,b國希望知道在被炸...

51nod 1632 B君的連通

題目 這題看起來難,其實這麼多概率啥的都是唬人的。甚至連快速冪都不用就可以解。解法 n個節點,n 1條邊,期望會有一半的邊被炸毀 因為總體概率就是50 即 n 1 2條邊被炸毀,這時有 n 1 2個連通塊。這個不是向下取整的 所以f n n 1 2 2 n 1 n 1 2 n 2 include i...

51nod1632 B君的連通

1632 b君的連通 基準時間限制 1 秒 空間限制 131072 kb 分值 20 難度 3級演算法題 b國擁有n個城市,其交通系統呈樹狀結構,即任意兩個城市存在且僅存在一條交通線將其連線。a國是b國的敵國企圖秘密發射飛彈打擊b國的交通線,現假設每條交通線都有50 的概率被炸毀,b國希望知道在被炸...