LA 4094 WonderTeam 构造
题意:
一共有\(n\)支队伍参加比赛,每两支队伍比赛两场,主客场各一场。
胜场得\(3\)分,平局得1分,败场不得分。
一支得分为\(p\)的队伍的排名\(=\)分数大于\(p\)的队伍数\(+1\),所以会有名词并列的情况。
现在要选出一支梦之队,同时满足下面三个条件:
- 胜利场数最多,不能并列
- 进球总数最多,不能并列
- 丢球总数最少,不能并列
求梦之队可能的最低排名。
分析:
进球数最多和丢球数最少我们是可以合理调整得到的,比如梦之队的胜场是以\(10^9 : 1\)获胜的。
下面考虑,让它胜场最多的情况下得分尽可能地少。
我们可以让梦之队胜两场,然后其余球队每队都赢梦之队一场,其余的比赛都只能平局了。
每支球队都会进行\(2(n-1)\)场比赛,假设梦之队打败的是\(A\)队和\(B\)队:
| 胜利场数 | 平局次数 | 最终得分 | |
|---|---|---|---|
| 梦之队 | 2 | \(n-3\) | \(n+3\) |
| A队 | 1 | \(2n-4\) | \(2n-1\) |
| B队 | 1 | \(2n-4\) | \(2n-1\) |
| 其他球队 | 1 | \(2n-3\) | \(2n\) |
这样,\(n > 4\)的时候,梦之队的排名可以是最后一名。
当\(1 \leq n \leq 3\)时,梦之队只可能是第一名,当\(n=4\)的时候,梦之队最少是第二名。
#include <cstdio>
int main()
{
int n;
while(scanf("%d", &n) == 1 && n) {
if(n <= 3) printf("1\n");
else if(n == 4) printf("2\n");
else printf("%d\n", n);
}
return 0;
}
LA 4094 WonderTeam 构造的更多相关文章
- UVa LA 4094 WonderTeam 构造 难度: 1
题目 https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_pr ...
- UVALive - 4094 WonderTeam (贪心)
题目大意: 有n支队伍,每两支队伍打两场比赛(主客场各一次),胜得3分,平得1分,输不得分,比赛结束之后会评选出一个梦之队,梦之队满足以下条件:进球总数最多,胜利场数最多,丢求总数最少,三个都不能并列 ...
- 【UVALive】4094 WonderTeam(神结论)
题目 传送门:QWQ 分析 好神的结论啊 看代码吧(Length只有85) 代码 顺手压了压代码 目前代码长度rk1 vjudge #include <iostream> ?:n ...
- UVaLive 4094 WonderTeam (贪心)
题意:有n支队伍,每两支队伍打两场比赛(主客场各一次),胜得3分,平得1分,输不得分,比赛结束之后会评选出一个梦之队, 梦之队满足以下条件:进球总数最多,胜利场数最多,丢求总数最少,三个都不能并列,求 ...
- C#数据结构_基本概念及线性表
常见的4类数据结构: 1.集合. 2.线性结构.3.树形结构.4.图状结构. 数据结构(Data Structure)简记为 DS,是一个二元组,DS = (D,R) 其中:D 是数据元素的有限集合, ...
- LA 6979 Known Notation 构造+贪心 铜牌题
题意:给出一个字符串,有两种操作: 1.插入一个数字 2.交换两个字符 问最少多少步可以把该字符串变为一个后缀表达式(操作符只有*) #include <cstdio> #inclu ...
- HDU 5745 La Vie en rose
La Vie en rose Time Limit: 14000/7000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)T ...
- HIT2019春软件构造->Git&Github学习笔记
由于软件构造课程需要,学习使用git,以下作为学习笔记. 一.Git初始化及仓库创建和操作 1.基本信息设置(设置签名) 命令 项目级别/仓库级别:仅在当前本地库范围内有效 git ...
- UVA-1610 Party Games (构造)
题目大意:给出一系列字符串,构造出一个字符串大于等于其中的一半,小于另一半. 题目分析:取大小为中间的两个a,b(a<b).实际上就是找出第一个小于b的同时大于等于a的字符串,直接构造即可.要注 ...
随机推荐
- Eclipse - 安装语言包
Open the install wizard with 'Help' > 'Install new software...' add the Babel p2 repository: http ...
- 一步步实现自己的ORM(二)
在第一篇<一步步实现自己的ORM(一)>里,我们用反射获取类名.属性和值,我们用这些信息开发了简单的INSERT方法,在上一篇文章里我们提到主键为什么没有设置成自增长类型,单单从属性里我们 ...
- html5 新增表单控件和表单属性
新的输入型控件 email:电子邮箱文本框,跟普通的没什么区别 当输入不是邮箱的时候,验证通不过 移动端的键盘会有变化 tel:电话号码 一般用于手机端,是一个键盘切换 url:网页的 ...
- Docker 给运行中的容器添加映射端口
方法1 1.获得容器IP 将container_name 换成实际环境中的容器名 docker inspect `container_name` | grep IPAddress 2. iptable ...
- vue搭建骨架屏步骤配置
1.什么是骨架屏幕? 在页面加载数据之前,有一段空白时间,要么用loading加载,要么就用骨架屏. 在开发webapp的时候总是会受到首屏加载时间过长的影响,主流的解决方法是在载入完成之前显示loa ...
- vmware 虚机NAT模式,局域网可访问
本地VMware虚拟机,网络模式为NAT,现在需要局域网其他电脑通过ssh连接这台VMware虚拟机 宿主机地址:192.168.3.26 VMware虚拟机地址:192.168.239.137 局域 ...
- BZOJ 2654: tree Kruskal+二分答案
2654: tree Time Limit: 30 Sec Memory Limit: 512 MBSubmit: 1863 Solved: 736[Submit][Status][Discuss ...
- 通过Java代码实现图片的放大和缩小
本文介绍的例子在Android安卓手机上测试通过. 先看看效果吧.可以看到这个开发好的安卓应用有三个按钮:Zoom In缩小图片,Zoom Out放大图片和Save保存. 初始页面: 可以在左边边框自 ...
- linux更新git
在CentOS中使用yum install git安装的git是1.7版本的,所以需要更新1.9以及更高版本的git. 安装方法如下: 1.安装依赖的包: yum -y install curl-de ...
- 数据预处理之数据规约(Data Reduction)
数据归约策略 数据仓库中往往具有海量的数据,在其上进行数据分析与挖掘需要很长的时间 数据归约 用于从源数据中得到数据集的归约表示,它小的很多,但可以产生相同的(几乎相同的)效果 数据归约策略 维归约 ...