题目

有\(n\)支球队,互相之间已经进行了一些比赛。现在还有\(m\)场比赛未进行,

每场比赛胜者得2分,平局各得1分,负者不得分。

问是否存在一种方法使得球队\(n\)的得分比其他\(n-1\)支球队的得分都高。

\(n\leq 100,m\leq 1000\)


分析

要让\(n\)比其他人都大那么肯定所有和\(n\)有关的比赛都是\(n\)赢。

我们对每场比赛建一个点\(u\),从\(S\)向\(u\)连容量为2的边。

对每支队伍建一个点\(v\),从\(v\)向\(T\)连容量为\(a[n]-a[v]-1\)的边。

然后从每个比赛点\(u\)向那两支队伍连容量为2的边。

跑一遍最大流就可以出解,有解当且仅当满流。

如果没有平分的可能直接让所有容量除以2向下取整就可以了。


代码

for (rr int i=1;i<=n;++i) scanf("%d",&a[i]);

for (rr int i=1;i<=m;++i){

    scanf("%d%d",&x,&y);

    if (x==n||y==n) a[n]+=2;

    else add(S,i,2),add(i,x+n,2),add(i,y+n,2),++ans;

}

for (rr int i=1;i<n;++i) if (a[i]>=a[n]) return !puts("NO");

for (rr int i=1;i<n;++i) add(i+m,T,a[n]-a[i]-1);

return !puts((dinic()==ans*2)?"YES":"NO"); 

#最大流#WOJ 124 Football Coach的更多相关文章

  1. WOJ 124. Football Coach 网络流

    Problem 1124 - Football Coach Description It is not an easy job to be a coach of a football team. Th ...

  2. Soj题目分类

    -----------------------------最优化问题------------------------------------- ----------------------常规动态规划 ...

  3. May 04th 2017 Week 18th Thursday

    No matter how far you may fly, never forget where you come from. 无论你能飞多远,都别忘了你来自何方. I never forget w ...

  4. listen 60

    Barbie Exposure May Limit Girls' Career Imagination The ubiquitous Barbie doll: she's been everythin ...

  5. 【BZOJ-3876】支线剧情 有上下界的网络流(有下界有源有汇最小费用最大流)

    3876: [Ahoi2014]支线剧情 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 821  Solved: 502[Submit][Status ...

  6. UVa1161 Objective: Berlin(最大流)

    题目 Source https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_pr ...

  7. 17111 Football team

    时间限制:1000MS  内存限制:65535K 提交次数:0 通过次数:0 题型: 编程题   语言: C++;C Description As every one known, a footbal ...

  8. Java IO流详尽解析

    流的概念和作用 学习Java IO,不得不提到的就是JavaIO流. 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...

  9. ZOJ 3229 有上下界最大流

    1: /** 2: ZOJ 3229 有上下界的最大流 3: 两次求最大流的过程,非二分 4: 有源汇上下界的最大流问题, 首先连接 sink -> src, [0,INF]. 5: 根据net ...

  10. POJ 3801 有上下界最小流

    1: /** 2: POJ 3801 有上下界的最小流 3: 4: 1.对supersrc到supersink 求一次最大流,记为f1.(在有源汇的情况下,先使整个网络趋向必须边尽量满足的情况) 5: ...

随机推荐

  1. postgresql中的json和jsonb

    1. 简介postgresql9.3以后,我们可以将表的字段类型设置为json.同时,postgresql还提供了jsonb格式,jsonb是json的二进制形式.二者区别: postgresql9. ...

  2. heapq.merge()高效合并有序序列

    import heapq import random # 针对较大的数据集,采用heapq中的merge()方法 # merge()不是对整个合并后的序列排序,而是使用一个堆一次一个元素的生成一个新序 ...

  3. Oracle 插入数据报错 ORA-00918

    1. 报错内容 ErrorCode = 918, SQLState = 23000, Details = ORA-00918: column 'TO_DATE('2023-12-1809:13:45' ...

  4. 记录一个错误:Unable to find a match: python-dev

    今天尝试在Linux下运行一个Python项目,在安装requirements.txt时报错 执行命令如下: [root@VM-16-8-centos cve-search]# pip3 instal ...

  5. C++特殊类的设计与单例模式

    #pragma once // 1. 设计一个不能被拷贝的类/* 解析:拷贝只会放生在两个场景中:拷贝构造函数以及赋值运算符重载,因此想要让一个类禁止拷贝, 只需让该类不能调用拷贝构造函数以及赋值运算 ...

  6. C# 操作国产数据库之【 人大金仓 】之四大模式

    人大金仓优点 人大金仓是国产最主流ORM之一 具有和PgSql一样强悍的性能,同时人大金仓支持了四种数据库模式 : Oracle.PgSql.MySql和SqlServer ,假如你们系统有多种数据库 ...

  7. SpringBoot2.x 启动过程详解

    spring 简化了java应用开发, 而springboot则简化了 spring应用的开发,用约定优于配置优于编码的方式快速构建spring对其他框架的整合. 官方文档 探究Hello,World ...

  8. Fiddler 延迟请求

    1.开启浏览器代理 2.fiddler设置要抓取的域名 3.设置fiddler代理端口 Tools->Options->Connections 4.设置接口延时 5.访问页面即可延时此接口

  9. 计算引擎-Presto

    概述 参考 高质量: B站:https://mp.weixin.qq.com/s/9_lSIFSw5o8sFC8foEtA7w https://mp.weixin.qq.com/s/NmTaJjE0U ...

  10. 候捷-C++面向对象高级开发

    目录 笔记参考 学习目标 complex类 构造函数 常量成员函数 参数传递 函数返回值 临时对象 友元 string类 三大函数 堆.栈与内存管理 扩展补充:类模板.函数模板及其他 继承.复合.委托 ...