文章分类 -  acm数据结构

hdu4313 树上有一些特殊点,使这些特殊点不连通至少需要割掉多少边权 并查集/类似kruskal
摘要:想了一会突然想到蓝桥杯最后一题,用了和那题类似的技巧处理,当时写完还自我陶醉了一下,虽然只能过小数据,但我过得姿势好看哇==将边权从大到小排序,然后开始加边,开了一个vis数组(就是这个数组)表示这个集合为真或者假真表示集合内有特殊点,反之无,只要出现两边都为真就ans+该边,vis伴随集合并相应的... 阅读全文

posted @ 2015-05-12 23:18 xiao_xin 阅读(253) 评论(0) 推荐(0)

hdu5176 树上所有两点间(最大值-最小值)和
摘要:这是民大学长之前出的一次题目,感觉题目不错现在才写题解=化简不难得到:sig(maxval[i]−minval[i])=sig(maxval)−sigma(minval)如何求所有最大值和最小值呢,分别从大到小和从小到大排序利用并查集就行了,比较巧妙。额==题目设了一些坑,一个是一个方向的并查集会爆... 阅读全文

posted @ 2015-03-01 22:23 xiao_xin 阅读(411) 评论(0) 推荐(0)

hdu2818(2009多校第一场) 移动木块问某木块下的木块数(带权并查集)
摘要:更新fatber[] down[] up[] 三个数组求得是down数组1.忽略合并同一区间 2.下标从0开始2333 1 #include 2 #include 3 int father[100005],down[100005],up[100005]; 4 int find(int x) 5 { ... 阅读全文

posted @ 2014-12-09 12:56 xiao_xin 阅读(118) 评论(0) 推荐(0)

hdu5032 关于bitset传递闭包
摘要:1 #include 2 #include 3 #include 4 using namespace std; 5 bitsetedge[1005]; 6 int main() 7 { 8 int i,sum,T,t,j,n,x,y; 9 double ans;10 sca... 阅读全文

posted @ 2014-09-25 21:38 xiao_xin 阅读(198) 评论(0) 推荐(0)

hdu1806 RMQ
摘要:1 #include 2 int d[100005][50]; 3 int max(int a,int b) 4 { 5 if (a>b) return(a); 6 return(b); 7 } 8 int rmq(int l,in... 阅读全文

posted @ 2014-07-16 17:46 xiao_xin 阅读(105) 评论(0) 推荐(0)

导航