题目

中文题目,不解释:

BZOJ传送门

分析

这道题BZOJ上也只有几个人过…奇怪了

下面是正解

  • 原问题为一个二分图边染色问题。首先考虑最好情况。最理想情况的分配为:设一个点xxx的度为dgr(x)dgr(x)dgr(x)。那么若dgr(x)dgr(x)dgr(x)为ttt的倍数,那么与xxx相连的边恰好平均分配给ttt个公司,每个公司dgr(x)/tdgr(x)/tdgr(x)/t个;如果不是ttt的倍数,那么要尽量分的均匀,即max(ax(c))−min(ax(c))=1max(a_x(c))-min(a_x(c))=1max(ax​(c))−min(ax​(c))=1。分出来应该为floor(dgr(x)/t),floor(dgr(x)/t),...,floor(dgr(x)/t)+1,floor(dgr(x)/t)+1,...floor(dgr(x)/t),floor(dgr(x)/t),...,floor(dgr(x)/t)+1,floor(dgr(x)/t)+1,...floor(dgr(x)/t),floor(dgr(x)/t),...,floor(dgr(x)/t)+1,floor(dgr(x)/t)+1,...。可以证明上述分配方案一定能达到。证明过程就是归纳构造的过程。我们先构造出ttt号公司所选边,然后转化成t−1t-1t−1个公司的子问题。根据假设,可以确定每个点属于ttt公司的边数只有一种或两种可能。于是建图,原来的边保留,容量为111。原点到AAA国每个点连以需要分配给ttt号公司的边数为容量的边。如果该点度数不能被ttt整除,那么多连一条容量为111的边。求最大流。可以证明任意一个最大流一定能对应到ttt公司的分配方案。然后删去满流边,递归成t−1t-1t−1个公司的问题。
  • 题解和javajavajava标程出处 传送门

…已经证明分配方案一定可以达到,那么这就是一道结论题了…下面是我的ACACAC代码

#include <cstdio>
template<typename T>inline void read(T &num) {
char ch; while((ch=getchar())<'0'||ch>'9');
for(num=0;ch>='0'&&ch<='9';num=num*10+ch-'0',ch=getchar());
}
const int MAXN = 205;
int deg[2][MAXN], n[2], t, m, ans;
int main ()
{
read(n[0]), read(n[1]), read(m), read(t);
for(int i = 1, x, y; i <= m; ++i)
read(x), read(y), ++deg[0][x], ++deg[1][y];
for(int i = 1; i <= n[0]; ++i) ans += bool(deg[0][i] % t);
for(int i = 1; i <= n[1]; ++i) ans += bool(deg[1][i] % t);
printf("%d\n", ans);
}

BZOJ 3903 反垄断 (最大流推的结论题)的更多相关文章

  1. crtmpserver实现防盗流和流推送验证

    Protecting your streams from webpage copy&paste flash code, listing or recording 保护流,防止在页面上被复制&a ...

  2. [bzoj 1449] 球队收益(费用流)

    [bzoj 1449] 球队收益(费用流) Description Input Output 一个整数表示联盟里所有球队收益之和的最小值. Sample Input 3 3 1 0 2 1 1 1 1 ...

  3. BZOJ.2597.[WC2007]剪刀石头布(费用流zkw)

    BZOJ 洛谷 \(Description\) 给定一张部分边方向已确定的竞赛图.你需要给剩下的边确定方向,使得图中的三元环数量最多. \(n\leq100\). \(Solution\) 这种选择之 ...

  4. crtmpserver实现防盗流和流推送验证 之二

    IV. Catching the thieves 抓住小偷 Well, we have just added a secure mechanism to our little streaming se ...

  5. BZOJ 3144 [HNOI2013]切糕 (最大流+巧妙的建图)

    题面:洛谷传送门 BZOJ传送门 最大流神题 把点权转化为边权,切糕里每个点$(i,j,k)$向$(i,j,k+1)$连一条流量为$v(i,j,k)$的边 源点$S$向第$1$层的点连边,第$R+1$ ...

  6. BZOJ 1189 二分匹配 || 最大流

    1189: [HNOI2007]紧急疏散evacuate Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1155  Solved: 420[Submi ...

  7. BZOJ 1053 & 反素数

    题意: 反素数,膜一篇GOD's Blog...http://blog.csdn.net/ACdreamers/article/details/25049767 此文一出,无与争锋... CODE: ...

  8. BZOJ 3085: 反质数加强版SAPGAP (反素数搜索)

    题目链接:http://www.lydsy.com:808/JudgeOnline/problem.php?id=3085 题意:求n(<=10^100)之内最大的反素数. 思路: 优化2: i ...

  9. poj 2711 Leapin' Lizards && BZOJ 1066: [SCOI2007]蜥蜴 最大流

    题目链接:http://poj.org/problem?id=2711 题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1066 Your p ...

随机推荐

  1. Linux由于物理节点故障导致的异常重启-Case1

    问题描述:Linux VM异常重启,需要排查问题原因 排查结果: 查询Messages日志获取到的信息 虚拟机内核版本: Jun :: test01 kernel: Linux version -.e ...

  2. [转帖]AIDA64 6.10版发布:全面支持中国兆芯、海光x86 CPU

    AIDA64 6.10版发布:全面支持中国兆芯.海光x86 CPU https://www.cnbeta.com/articles/soft/892877.htm 支持国产x86了 作为硬件识别工具领 ...

  3. Zuul 源码的分析

    Zuul 就是个网关,过滤所有数据, 和Eureka的区别就是,前者或过滤数据,一般进行权限拦截,后者进行请求的转发,只是链接. Zuul包含了对请求的路由和过滤两个最主要的功能: 使用 注解@Ena ...

  4. 【坑】Mybatis 多次逆向工程生成mapper文件

    在使用 mybatis 逆向工程的时候,多次逆向工程生成的文件,是不会产生覆盖的,而是追加: 假如,你第一次逆向,发生数据库的某个字段类型错了,修改以后再次逆向,那么得到的 mapper文件,将是 2 ...

  5. (二) JPA基础

    一.什么是JAP JPA(Java Persistence API)是SUN官方推出的Java持久化规范,它为Java开发人员提供了一种对象/关联映射工具来管理Java应用中的关系数据.它的出现主要是 ...

  6. (十一)springmvc和spring的整合

    1:Maven引入相关的jar包. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="ht ...

  7. [NOIP2018模拟赛10.18]自闭报告

    闲扯 这一天,菜鸡RyeCatcher又想起来了被毒瘤题支配的恐惧 今天比较好玩,还是ljy提醒才发现文件夹里有题面...不知道外面的人什么时候才发现 看完了题面,又回到了雅礼啥题也不会写的感觉 T1 ...

  8. [书籍翻译] 《JavaScript并发编程》 第二章 JavaScript运行模型

    本文是我翻译<JavaScript Concurrency>书籍的第二章 JavaScript运行模型,该书主要以Promises.Generator.Web workers等技术来讲解J ...

  9. MVC,MVP 和 MVVM 的图示(原理)

    一.MVC MVC模式的意思是,软件可以分成三个部分. 视图(View):用户界面. 控制器(Controller):业务逻辑 模型(Model):数据保存 各部分之间的通信方式如下. View 传送 ...

  10. vue、react中循环遍历为什么会有key,key有什么作用?

    先讲一下,vue和react都是在操作虚拟dom,并且根据diff算法进行新旧dom对比,从而更新dom,以vue举例: vue官方文档中写到有 key 的特殊属性主要用在 Vue 的虚拟 DOM 算 ...