随笔分类 -  倍增

摘要:/*codevs 1519 过路费 最小生成树+倍增*/ #include #include #include #include #define maxn 100010 #define inf 0x3f3f3f3 using namespace std; int n,m,q,num,head[maxn],fa[maxn][25],mx[maxn][25],c[maxn],father[maxn]... 阅读全文
posted @ 2016-10-18 21:27 一入OI深似海 阅读(252) 评论(0) 推荐(0)
摘要:/*我尼玛 又一个min打成max 看了半天....*/ #include #include #include #define maxn 200010 #define inf 0x7fffffff using namespace std; int n,m,head[maxn],num,v[maxn],fa[maxn][25],c[maxn]; int mii[maxn][25],mxx[maxn... 阅读全文
posted @ 2016-09-17 08:25 一入OI深似海 阅读(339) 评论(1) 推荐(0)
摘要:/* 考试的时候没想出正解 也没打暴力 时间不够了 随便yy了几种情况按出现的先后顺序处理而没有贪心 的了20分 不粘了 正解是围绕首都的儿子来搞的 显然先二分答案 对于每个限定的最大时间 我们尝试着那每个军队向根节点蹦 能蹦到的记下来最靠近根的点 并记下剩下多少时间 不能蹦到的 记下能蹦到哪里 并且标记为已有军队 最后updata一下不能蹦到的 说不定可以蹦到首都的儿子 或者首都的儿子的儿子都... 阅读全文
posted @ 2016-08-25 21:51 一入OI深似海 阅读(340) 评论(0) 推荐(0)
摘要:/*考场上写的暴力 40分钟70分*/ #include #include #include #define base 1000000000 #define maxn 100010 #define ll long long using namespace std; ll n,m,h[maxn],X,A[maxn],B[maxn],st,ans; bool falg; double mii=ba... 阅读全文
posted @ 2016-08-13 17:49 一入OI深似海 阅读(558) 评论(3) 推荐(1)
摘要:/* 终于没有看题解写出了一道noip T3难度的题(虽然wmy简单点拨了一下 ^^) 联通所有点 路上维护最小权值 使最小权值 很像最小生成树嘛 但是他要的是最小的最大 二分不单调似乎 所以先最大生成树建图 这样就得到了n-1条边链接n个节点 又是维护两两节点之间的路上最小值 很容易想到LCA 怎么维护呢 开始想想 嗯 树的规模应该不会很大 嗯 不用倍增思想应该以跑的挺快 所以第一遍只维护了... 阅读全文
posted @ 2016-07-08 17:08 一入OI深似海 阅读(431) 评论(0) 推荐(0)
摘要:/* 一开始的思路 求出每两个点之间的距离(其实枚举两个点就T了) 统计为2 的点对 然后统计答案 倍增LCA的话 是O(n+n*n) 后面的n*n是枚举那两个点 华丽的T了 60分 */ #include #include #include #define maxn 200010 using namespace std; int n,w[maxn],fa[maxn][20],head[ma... 阅读全文
posted @ 2016-07-07 17:56 一入OI深似海 阅读(207) 评论(0) 推荐(0)
摘要:/* 95 最后一个点T了 qian lv ji qiong 了 没学过树剖 听chx听xzc说的神奇的方法 Orz 首先求出每个计划的路径长度 这里写的倍增 然后二分答案 对于每个ans 统计>他的路径条数 tot 并维护最大差值 dec 并且对于每条不合法的路径维护每个点的经过次数 然后枚举点 如果经过次数==tot说明每一条不合法的都经过他 然后尝试把它建成虫洞 如果他对应边的权值>... 阅读全文
posted @ 2016-06-04 20:43 一入OI深似海 阅读(2201) 评论(3) 推荐(0)
摘要:/* 先来个倍增 */ #include #include #include #define maxn 10010 using namespace std; int T,n,num,head[maxn],st,end,anc,fa[maxn][25],dep[maxn],out[maxn],root; struct node { int u,v,t,pre; }e[maxn*2]; v... 阅读全文
posted @ 2016-05-31 15:52 一入OI深似海 阅读(227) 评论(0) 推荐(0)
摘要:/* 在我还不知道LCA之前 暴力跑的SPFA 70分 三个点TLE */ #include #include #include #include using namespace std; struct node { int u; int t; int pre; }; node a[30010*2+100]; queueq; int n,qq,x[30010],num... 阅读全文
posted @ 2016-05-30 14:53 一入OI深似海 阅读(262) 评论(0) 推荐(0)