用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...