BZOJ4446 Scoi2015 小凸玩密室

2022-08-13 00:15:22 字數 483 閱讀 1732

用ui,j表示走完i的子樹後走到i的深度為j的祖先的兄弟的最小代價;

用vi,j表示走完i的子樹後走到i的深度為j的祖先的最小代價,用u算出v。

列舉起點,計算答案。

#include#includeusing std::min;

typedef long long ll;

const int n=2e5+5;

ll a[n],b[n],c[n],f[n][19][2];

int main()

}it;

int n=it;

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

a[i]=it;

for(int i=2;i<=n;++i)

for(int i=n;i;--i)

for(int j=1;i>>j-1;++j)

if(i<<1>n)else

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

}

bzoj4446 Scoi2015 小凸玩密室

神仙題吧,很有東西 看了題解才會做的 先提取有用資訊 1 這個密室是一棵有n個節點的完全二叉樹 2 在點燈的過程中,要保證任意時刻所有被點亮的燈泡必須連通 3 在點亮乙個燈泡後必須先點亮其子樹所有燈泡才能點亮其他燈泡 所以get到資訊 1 樹高嚴格 logn 2 點亮的燈泡組成乙個聯通塊 3 點亮乙...

BZOJ 1079 SCOI2008 著色方案

題目 分析 一看就覺得是dp或者直接排列組合公式或者容斥?我就只想到dp的,我們用dp i j 表示前i種顏色,排列出有j對相鄰一樣顏色的方案數。當出現乙個新的顏色時,我們把這個顏色插板法插進去,我們要列舉插入的方式,可能插到相鄰顏色一樣的中間,或者不是,然後進行狀態轉移.具體看 include i...

BZOJ1066 SCOI2007蜥蜴 最大流

挺顯然的最大流,源向所有有蜥蜴的點連inf邊,所有點拆成入點和出點,入店向出點連流量為高度的邊,限制流量,所有可以一步跳出去的點向匯連inf邊,跑最大流就行了。include include include define inf 99999999 define maxn 1005 using nam...