摘要: "题目链接" 环形均分纸牌。 设平均数为$ave$,$g[i]=a[i] ave$,$s[i]=\sum_{j=1}^ig[i]$。 设$s$的中位数为$s[k]$,则答案为$\sum |s[i] s[k]|$ 博主太菜,无法给出证明。 cpp include include using names 阅读全文
posted @ 2019-03-16 12:05 Qihoo360 阅读(117) 评论(1) 推荐(0) 编辑
摘要: "题目链接" 环形均分纸牌,既然是网络流23题的那就用网络流做把。 套路拆点。 供需平衡。 源点向大于平均数的点的入点连流量为这个数减去平均数的差,费用为0的边,表示需要移走这么多。 小于平均数的点的出点向汇点连流量为平均数减去这个数的差,费用为0的边,表示可以容纳这么多。 然后相邻入点两两连边,入 阅读全文
posted @ 2019-03-16 12:00 Qihoo360 阅读(159) 评论(0) 推荐(0) 编辑
摘要: "题目链接" 首先有$n$条路径,每条路径就是一个点,然后尽量合并,答案就是点数 合并数。 套路拆点,源连入,出连汇,原有的边入出连。 最大流就是最大合并数,第一问解决。 然后怎么输出方案? 我是找到所有路径中的最后一个点,然后根据残量网络一直往前跳,$dfs$倒序输出。 cpp include i 阅读全文
posted @ 2019-03-16 11:27 Qihoo360 阅读(188) 评论(0) 推荐(0) 编辑
摘要: "题目链接" 用最多经过$k$条经过$0$的路径覆盖所有点。 定义$ds[i][j]$表示从$i$到$j$不经过大于$max(i,j)$的点的最短路,显然可以用弗洛伊德求。 然后每个点拆成入出点,连边 源点向$0$的入点连流量k费用0的边,表示最多经过$0$K次 源点向其余每个点的入点连流量1费用0 阅读全文
posted @ 2019-03-16 10:43 Qihoo360 阅读(171) 评论(1) 推荐(0) 编辑
You're powerful!