AHOI 2016初中组 自行车比赛
来源:互联网 发布:java实现多态的方式 编辑:程序博客网 时间:2024/04/28 10:17
[AHOI2016初中组]自行车比赛
题目描述
小雪非常关注自行车比赛,尤其是环滨湖自行车赛。一年一度的环滨湖自行车赛,需要选手们连续比赛数日,最终按照累计得分决出冠军。今年一共有 N 位参赛选手。每一天的比赛总会决出当日的排名,第一名的选手会获得 N 点得分,第二名会获得 N-1 点得分,第三名会获得 N-2 点得分,依次类推,最后一名会获得 1 点得分。保证没有选手会排名相同。
在之前的数日较量中, N 位选手已经分别累计了一些分数。现在即将开始的是最后一天的比赛。小雪希望知道有多少位选手还有可能获得最终的冠军,也就是说还有多少选手有可能通过最后一天的比赛获得累计总分第一名
输入输出格式
输入格式:
第一行输入一个整数 N,表示参赛选手总数,保证 3<=N<=300000。
之后 N 行,其中第 i 行输入一个整数 B[i]表示第 i 位选手已经获得的累计分数,满足0<=B[i]<=2000000。
输出格式:
输出只有一行,只输出一个整数,表示有多少位选手有可能获得最终的冠军。
输入输出样例
输入样例#1:
38109
输出样例#1:
3
输入样例#2:
51514151214
输出样例#2:
4
说明
对于 20%的数据, 3<=N<=600。
对于 50%的数据, 3<=N<=10000。
对于 100%的数据, 3<=N<=300000 且 0<=B[i]<=2000000。
贪心,如果第一名得一分,第i名得n分,第i名超过了第一名,ans++
#include <algorithm>#include <cstdio>using namespace std;int n,a[300001],ans = 0;int main() { scanf("%d",&n); for (int i = 1;i <= n;i++) scanf("%d",&a[i]); sort(a+1,a+n+1); for (int i = 1;i < n;i++) if (a[i]+n >= a[n]+1) ans++; printf("%d",ans+1); return 0;}
阅读全文
0 0
- AHOI 2016初中组 自行车比赛
- 洛谷 P2777 [AHOI2016初中组] 自行车比赛
- 洛谷 P2777 [AHOI2016初中组]自行车比赛
- 洛谷 P2777 [AHOI2016初中组]自行车比赛
- 自行车比赛(AHOI2016初中组T1)
- 自行车比赛
- Vijos P1988 自行车比赛
- Vijos P1988 自行车比赛(treap)
- AHOI2017初中组题解
- 自行车
- 自行车
- 自行车
- 自行车
- 自行车自行车自行车自行车
- 自行车
- AHOI2017初中组解题报告
- NHOI2017初中组解题报告
- 自行车比赛+纪中1238+tarjan缩点+拓扑排序+玄学优化
- AHOI 2015 小岛
- Button(待完善)
- 详解spring 每个jar的作用
- 15 个 Android 通用流行框架大全
- kafka详解一、Kafka简介
- AHOI 2016初中组 自行车比赛
- STL 实现最长上升,最长递减序列
- 剑指offer题目1
- vijos1964 夜夜的NOIP之旅
- orzdba的使用
- python正则表达式基础——匹配0-100的数
- Luogu P1941 [NOIp提高组2014]飞扬的小鸟
- IntelliJ IDEA Debug调试案例一
- 系统调用