BZOJ 1623 [Usaco2008 Open]Cow Cars 奶牛飞车:贪心
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1623
题意:
编号为1到N的N只奶牛正各自驾着车打算在牛德比亚的高速公路上飞驰。高速公路有M(1≤M≤N)条车道。奶牛i有一个自己的车速上限Si(l≤Si≤1,000,000)。
在经历过糟糕的驾驶事故之后,奶牛们变得十分小心,避免碰撞的发生。
每条车道上,如果某一只奶牛i的前面有K只奶牛驾车行驶,那奶牛i的速度上限就会下降K*D个单位,也就是说,她的速度不会超过Si - k*D(O≤D≤5000),当然如果这个数是负的,那她的速度将是0。
牛德比亚的高速会路法规定,在高速公路上行驶的车辆时速不得低于L(1 ≤ L ≤ 1,000,000)。
那么,请你计算有多少奶牛可以在高速公路上行驶呢?
题解:
贪心。
先按s[i]从小到大排序。
s[i]越大的牛,能够承受的前面牛的数量越大,应该排在后面。
所以将s[i]小的排在前面(一行一行排)。
当前限速为 spd = s[i] - (ans/m)*d (前面牛数量 = 当前行数 = ans/m)
如果满足 spd >= L,则当前牛可以添加,ans++。
AC Code:
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <algorithm>
#define MAX_N 50005 using namespace std; int n,m,d,l;
int ans=;
int s[MAX_N]; void read()
{
cin>>n>>m>>d>>l;
for(int i=;i<n;i++)
{
cin>>s[i];
}
} void solve()
{
sort(s,s+n);
for(int i=;i<n;i++)
{
int spd=s[i]-(ans/m)*d;
if(spd>=l) ans++;
}
} void print()
{
cout<<ans<<endl;
} int main()
{
read();
solve();
print();
}
BZOJ 1623 [Usaco2008 Open]Cow Cars 奶牛飞车:贪心的更多相关文章
- bzoj 1623: [Usaco2008 Open]Cow Cars 奶牛飞车
1623: [Usaco2008 Open]Cow Cars 奶牛飞车 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 325 Solved: 223[S ...
- BZOJ——1623: [Usaco2008 Open]Cow Cars 奶牛飞车
http://www.lydsy.com/JudgeOnline/problem.php?id=1623 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 6 ...
- bzoj 1623: [Usaco2008 Open]Cow Cars 奶牛飞车【排序+贪心】
从小到大排个序,然后能选就选 #include<iostream> #include<cstdio> #include<algorithm> using names ...
- 1623: [Usaco2008 Open]Cow Cars 奶牛飞车
1623: [Usaco2008 Open]Cow Cars 奶牛飞车 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 291 Solved: 201[S ...
- 【BZOJ1623】 [Usaco2008 Open]Cow Cars 奶牛飞车 贪心
SB贪心,一开始还想着用二分,看了眼黄学长的blog,发现自己SB了... 最小道路=已选取的奶牛/道路总数. #include <iostream> #include <cstdi ...
- bzoj1623 [Usaco2008 Open]Cow Cars 奶牛飞车
Description 编号为1到N的N只奶牛正各自驾着车打算在牛德比亚的高速公路上飞驰.高速公路有M(1≤M≤N)条车道.奶牛i有一个自己的车速上限Si(l≤Si≤1,000,000). ...
- Bzoj 1612: [Usaco2008 Jan]Cow Contest奶牛的比赛 传递闭包,bitset
1612: [Usaco2008 Jan]Cow Contest奶牛的比赛 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 891 Solved: 590 ...
- BZOJ 1612: [Usaco2008 Jan]Cow Contest奶牛的比赛( floyd )
对于第 i 头牛 , 假如排名比它高和低的数位 n - 1 , 那么他的 rank 便可以确定 . floyd -------------------------------------------- ...
- BZOJ 1604: [Usaco2008 Open]Cow Neighborhoods 奶牛的邻居
题目 1604: [Usaco2008 Open]Cow Neighborhoods 奶牛的邻居 Time Limit: 5 Sec Memory Limit: 64 MB Description ...
随机推荐
- Java EE官方文档汇总
Java EE是一个开发规范标准,各个容器厂商根据标准去实现,比如Tomcat等,其中Oracle通过标准用GlassFish去实现. 5:https://docs.oracle.com/javaee ...
- 1.【nuxt起步】-nuxt是什么?
百度了解下,简单说就是vue的seo化,因为vue是spa,不支持seo,从本地运行的源码可以看出来,html没有tkd和相关文字,导致百度收录困难,所以nuxt可以很好的解决这个问题, 举个例子:纯 ...
- Windows 如何为绿色软件运行时添加参数 如最小化,无窗口运行
1 有些软件运行的时候需要或者可以添加参数来实现一些特殊要求,比如开机自启动,运行时不显示主界面,不显示托盘图标等,比如下面的这个流量精灵软件,"urlcore.exe /h /r /t 4 ...
- linux中ERROR: The partition with /var/lib/mysql is too full!解决的方法
今天在ubuntu上遇见这个问题.应该是我的第一分区太小了. 解决的方法: bey0nd@wzw:/var$ cd /var bey0nd@wzw:/var$ rm -rf log 我们删除日志文件 ...
- 怎样让Eclipse的智能提示像VS一样霸气
说起来用Eclipse也有一段时间了.相信每个用过的人都知道他的智能提示功能真的是糟糕透了,与VisualStudio2008简直不是一个档次的!我就纳闷了,他为什么不弄好一点呢.今天我实在是忍不住了 ...
- C#中的 SET ,GET
C#中get和SET,看来看去还是看不懂,通俗一点解释一下,用了有什么好处,不用会怎么样如果你这样写是没有什么不一样的. private int __Old; public int Old{ get{ ...
- ASP.NET MVC Filters 4种默认过滤器的使用【附示例】 数据库常见死锁原因及处理 .NET源码中的链表 多线程下C#如何保证线程安全? .net实现支付宝在线支付 彻头彻尾理解单例模式与多线程 App.Config详解及读写操作 判断客户端是iOS还是Android,判断是不是在微信浏览器打开
ASP.NET MVC Filters 4种默认过滤器的使用[附示例] 过滤器(Filters)的出现使得我们可以在ASP.NET MVC程序里更好的控制浏览器请求过来的URL,不是每个请求都会响 ...
- Linux 下编译安装OpenCV(zhuanzai)
http://www.cnblogs.com/emouse/archive/2013/02/22/2922940.html Cmake的安装 OpenCV 2.2以后版本需要使用Cmake生成make ...
- jQuery AjaxUpload中文使用API和demo示例
1.AjaxUpload上传插件 浏览器迫使我们使用文件输入控件(<input type=”file” />)做上传,然而此控件的样式是不能修改的.此外,基于表单上传在流行的Ajax应用程 ...
- jquery 效果网址分享
http://www.lanrentuku.com/js/ http://www.baidu.com/link?url=2nuImAliKGCKyDeJ7ln2DR_2if5uKgr-em6a3dx ...