洛谷 2777 [AHOI2016初中组]自行车比赛

【题解】

  为了让某个选手能够获得总分第一,就让他最后一天的得分是n,并且让别的选手的得分的最大值尽量小。于是我们先把目前积分排序,并且让他们最后一天的排名刚好与积分排名相反。即某个积分排名为X的人最后一天排名为n-X+1. 然后我们在里面找出最高总分mx。 接着依次枚举每个人,如果他的积分加上n≥mx,那么这个人就有可能获得冠军。

  

#include<cstdio>
#include<algorithm>
#define N 300010
#define rg register
using namespace std;
int n,m,a[N],mx,ans;
inline int read(){
	int k=0,f=1; char c=getchar();
	while(c<‘0‘||c>‘9‘)c==‘-‘&&(f=-1),c=getchar();
	while(‘0‘<=c&&c<=‘9‘)k=k*10+c-‘0‘,c=getchar();
	return k*f;
}
inline int max(int x,int y){return x>y?x:y;}
int main(){
	n=read();
	for(rg int i=1;i<=n;i++)a[i]=read();
	sort(a+1,a+1+n);
	for(rg int i=1;i<=n;i++) mx=max(mx,a[i]+n-i+1);
	for(rg int i=1;i<=n;i++){
		if(a[i]+n>=mx) ans++;
	}
	return printf("%d\n",ans),0;
}

  

原文地址:https://www.cnblogs.com/DriverLao/p/8631379.html

时间: 2024-10-14 14:26:06

洛谷 2777 [AHOI2016初中组]自行车比赛的相关文章

洛谷P2777 [AHOI2016初中组]自行车比赛

本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000 作者博客:http://www.cnblogs.com/ljh2000-jump/转载请注明出处,侵权必究,保留最终解释权! 题目链接:洛谷P2777 正解:贪心 解题报告: 考虑每次的匹配情况,很容易发现,每次都是当前的取最大值,然后其余的交叉匹配,维护一个区间$max$就好了,每次移动. #include <iostream> #include <cstdio>

洛谷 P2777 [AHOI2016初中组]自行车比赛

题目描述 小雪非常关注自行车比赛,尤其是环滨湖自行车赛.一年一度的环滨湖自行车赛,需要选手们连续比赛数日,最终按照累计得分决出冠军.今年一共有 N 位参赛选手.每一天的比赛总会决出当日的排名,第一名的选手会获得 N 点得分,第二名会获得 N-1 点得分,第三名会获得 N-2 点得分,依次类推,最后一名会获得 1 点得分.保证没有选手会排名相同. 在之前的数日较量中, N 位选手已经分别累计了一些分数.现在即将开始的是最后一天的比赛.小雪希望知道有多少位选手还有可能获得最终的冠军,也就是说还有多少

洛谷⑨月月赛Round2 官方比赛 OI

自评: (完成时间3.5时) 第一题 模拟 虽然A了,代码敲得有点慢 第二题 最短路 第一次敲对了,又考虑数据范围和答案范围,改错了,100分改成42分.QAQ. 第三题 乱搞 80分 还可以(因为没思路啊),不过也有A了的 如果第二题不手贱的话,day1 280分,day2再随便写点,妥妥的一等. 可惜没如果.(也还好不是联赛). P3392 涂国旗 10通过 267提交 题目提供者kkksc03 标签 难度普及- 提交 讨论 题解 最新讨论 快点给钱 这不就是荷兰国旗问题吗 重复题目 题目描

[题解]洛谷比赛『期末考后的休闲比赛2』

[前言] 这场比赛已经结束了有几天,但我各种忙,虽然AK但还是没来得及写题解.(我才不会告诉你我跑去学数据结构了) T1 区间方差 (就不贴题好了) 首先可以推公式(我们可以知道,线段树然而并不能通过初中学过的方差公式在log(L)内求出方差): (s2表示方差,L表示区间长度,xi表示区间的每一项,最后一个x上画了一根线表示这些数据的平均数) 用二项式定理完全平方公式可得: 再次展开: 另外,再代入以下这个 得到了: 然后继续吧.. 然后duang地一声合并同类项,于是我们得到了: 然后可以高

洛谷OJ P1074 靶形数独 解题报告

洛谷OJ P1074 靶形数独 解题报告 by MedalPluS 题目描述  小城和小华都是热爱数学的好学生,最近,他们不约而同地迷上了数独游戏,好胜的他们想用数独来一比高低.但普通的数独对他们来说都过于简单了,于是他们向 Z 博士请教,Z 博士拿出了他最近发明的“靶形数独”,作为这两个孩子比试的题目. 靶形数独的方格同普通数独一样,在 9 格宽×9 格高的大九宫格中有 9 个 3 格宽×3 格高的小九宫格(用粗黑色线隔开的).在这个大九宫格中,有一些数字是已知的,根据这些数字,利用逻辑推理,

洛谷1001 A+B Problem

洛谷1001 A+B Problem 本题地址:http://www.luogu.org/problem/show?pid=1001 题目描述 输入两个整数a,b,输出它们的和(|a|,|b|<=10^9).注意1.pascal使用integer会爆掉哦!2.有负数哦!3.c/c++的main函数必须是int类型,而且最后要return 0.这不仅对洛谷其他题目有效,而且也是noip/noi比赛的要求! 好吧,同志们,我们就从这一题开始,向着大牛的路进发.“任何一个伟大的思想,都有一个微不足道的

洛谷 P1855 榨取kkksc03 题解

此文为博主原创题解,转载时请通知博主,并把原文链接放在正文醒目位置. 题目链接:https://www.luogu.org/problem/show?pid=1855 题目描述 洛谷的运营组决定,如果一名oier向他的教练推荐洛谷,并能够成功的使用(成功使用的定义是:该团队有20个或以上的成员,上传10道以上的私有题目,布置过一次作业并成功举办过一次公开比赛),那么他可以浪费掉kkksc03的一些时间的同时消耗掉kkksc03的一些金钱以满足自己的一个愿望. Kkksc03的时间和金钱是有限的,

洛谷 P1855 榨取kkksc03

题目描述 洛谷2的团队功能是其他任何oj和工具难以达到的.借助洛谷强大的服务器资源,任何学校都可以在洛谷上零成本的搭建oj并高效率的完成训练计划. 为什么说是搭建oj呢?为什么高效呢? 因为,你可以上传私有题目,团队外别人是无法看到的.我们还能帮你们评测! 你可以创建作业,给组员布置任务,查看组员的完成情况,还可以点评任意一份代码! 你可以创建比赛!既可以是oi赛制还可以是acm赛制!既可以是团队内部的私有比赛,也可以公开赛,甚至可以指定谁可以参加比赛.这样,搞“x校联赛”最合适不过了.洛谷凭借

洛谷 P1001 A+B Problem

题目描述 输入两个整数a,b,输出它们的和(|a|,|b|<=10^9). 注意 1.pascal使用integer会爆掉哦! 2.有负数哦! 3.c/c++的main函数必须是int类型,而且最后要return 0.这不仅对洛谷其他题目有效,而且也是noip/noi比赛的要求! 好吧,同志们,我们就从这一题开始,向着大牛的路进发. “任何一个伟大的思想,都有一个微不足道的开始.” 输入输出格式 输入格式: 两个整数以空格分开 输出格式: 一个数 输入输出样例 输入样例#1: 20 30 输出样