博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
P4379 [USACO18OPEN]Lemonade Line
阅读量:5291 次
发布时间:2019-06-14

本文共 1058 字,大约阅读时间需要 3 分钟。

 如有乱码,请

 

题目描述

这是农场上一个炎热的夏日,Farmer John要给他的NN头奶牛发柠檬汽水了!所有的NN头奶牛(方便起见,编号为1 \dots N1N)都喜欢柠檬汽水,只是有些喜欢的程度更高一些。具体地说,奶牛ii为了获得柠檬汽水最多愿意排在w_iwi头奶牛之后。现在所有的NN头奶牛都在田里,但是只要Farmer John敲响牛铃,这些奶牛就会立刻赶到FJ的柠檬汽水站。她们会在FJ开始分发柠檬汽水之前到达,但是没有两头奶牛会在同一时刻到达。此外,当奶牛ii到达时,当且仅当至多有w_iwi头奶牛在排队时她会来排队。

Farmer John想要提前准备一定量的柠檬汽水,但是他不想浪费。排队的奶牛的数量可能取决于她们到达的顺序。帮助他求出最少可能的排队的奶牛数量。

输入格式

第一行包含NN,第二行包含NN个用空格分隔的整数w_1, w_2, \dots, w_Nw1,w2,,wN。输入保证1 \leq N \leq 10^51N105,此外对于每头奶牛ii,0 \leq w_i \leq 10^90wi109。

输出格式

输出在所有可能的奶牛到达顺序之下,最小可能的排队的奶牛数量。

输入输出样例

输入 #1复制
57 1 400 2 2
输出 #1复制
3

说明/提示

在这个情况下,可能最后仅有三头奶牛在队伍中(这也是最小可能值)。假设w = 7w=7和w = 400w=400的奶牛先到并等在队伍中。然后w = 1w=1的奶牛到达并且会离开,这是由于已经有2头奶牛在队伍中了。然后w = 2w=2的两头奶牛到达,一头留下排队,一头离开。

#include
#include
#include
#include
#include
#include
using namespace std;int a[100610],n;inline bool cmp(int x,int y){ return x>y;}int main(){ scanf("%d",&n); for(int i=0;i

  

转载于:https://www.cnblogs.com/xiongchongwen/p/11507996.html

你可能感兴趣的文章
随机颜色值
查看>>
每日一库:Modernizr.js,es5-shim.js,es5-safe.js
查看>>
目录相关的操作
查看>>
解决虚拟机vmware安装64位系统“此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态”的问题...
查看>>
C++----练习--引用头文件
查看>>
11.基本包装类型
查看>>
ajax连接服务器框架
查看>>
wpf样式绑定 行为绑定 事件关联 路由事件实例
查看>>
利用maven管理项目之POM文件配置
查看>>
用HttpCombiner来减少js和css的请问次数
查看>>
FUSE-用户空间文件系统
查看>>
将tiff文件转化为jpg文件并保存
查看>>
ubuntu 16.04 开机脚本
查看>>
 VS2012 C#调用C++ dll
查看>>
TCL:表格(xls)中写入数据
查看>>
SQL SERVER 2005中如何获取日期(一个月的最后一日、一年的第一日等等)
查看>>
django 学习笔记(转)
查看>>
控制台程序秒变Windows服务(Topshelf)
查看>>
字节流与字符流的区别详解
查看>>
20141026--娱乐-箱子
查看>>