Blue:

贪心。

我们不妨给蛤定一个先后顺序,则贪心策略即从右至左每只蛤依次往最远的石子跳。

证明:

如果最右的蛤不往最远的石子跳,而是选择了一个较近的石子,那么必然会存在一个该蛤左边的蛤越过了它跳向其右边。因为每个蛤的能力是相同的,我们可以交换路线使得该贪心策略不变差。

接着用归纳法可以证明对于所有蛤该策略最优。

复杂度O( N )

各种大佬用各种方法A了这道题……ooo的sb线段树,什么set,队列啥的都用上了……貌似只有我和b哥打了网络流,(B神盖世)比我厉害用了线段树优化建边+网络流,复杂度什么都好像都说的过去,而我只是冲着那30分去的。

网络流就比较好想了,建立两个超级源点S,SS,S向SS连容量为m的边,将每个石头拆开,连容量为1的边(如果每个石头可以跳k次那网络流板erb正解),然后相距不超过d的石头连边,最大流就是答案,不过复杂度好像说不过去……

正解:

将所有的蛤(不是青蛙吗???)看作一个整体,那么每次跳都会占据一段石头,这样是最优的,而且每次青蛙都会尽量向远处跳,所以我么可以得到这样一个结论:若一只蛤在i,下次跳最远能到j,那么最多会剩下j-i+1只蛤(即把之间全占满),这样取符合条件最大值就是了。可以用单调指针实现。

 #include<iostream>
#include<cstdio>
#define LL long long
#define ma(x) memset(x,0,sizeof(x))
using namespace std;
int T,n,m,d,l,a[];
signed main()
{
cin>>T;
while(T--)
{
cin>>n>>m>>d>>l;
for(int i=;i<=n;i++)cin>>a[i];
if(d==l){puts("Excited");continue;}
int ans=m;a[n+]=l;
int R=;bool pd=;
for(int i=;i<=n+;i++)
{
while(a[R+]-a[i]<=d&&R<n+)R++;
if(R==n+)break;
ans=min(ans,R-i);
}
if(ans==m)puts("Excited");
else cout<<ans<<endl;
}
}

和Dinic比起来短好多……

HZOJ Blue的更多相关文章

  1. 实测:Windows 8.1 (Windows Blue) 第三方桌面应用无法支持Retina屏,效果与Windows8.0似无差别。

    首先我是在VMWARE下装的Windows Blue,是否改用BootCamp直接装就没问题我不知道,理论上应该无差别. 谣言里那个Windows Blue里的缩放功能可以完美支持Retina,但实际 ...

  2. 在Visual Studio 2012 Blue theme下使用Dark theme的文本编辑器颜色设置

    Visual Studio 2012 默认提供了3种color theme: blue,light,和dark.其中dark的文本编辑器颜色设定很爽,可是整个菜单项加上一些小的窗口如Find Resu ...

  3. IBM云的商业动作之我见(1):IBM 收购 OpenStack 托管私有云公司 Blue Box [IBM Acquired Blue Box]

    2015-06-10 IBM 刚刚(2015/06/03)宣布收购 Blue Box 公司.本文就聊聊这点事. 1. Blue Box 是做什么的?它是一家中小型托管私有云提供商. 1.1 公司的简单 ...

  4. 【BZOJ-1568】Blue Mary开公司 李超线段树 (标记永久化)

    1568: [JSOI2008]Blue Mary开公司 Time Limit: 15 Sec  Memory Limit: 162 MBSubmit: 557  Solved: 192[Submit ...

  5. [CareerCup] 6.4 Blue Eyes People on Island 岛上的蓝眼人

    6.4 A bunch of people are living on an island, when a visitor comes with a strange order: all blue-e ...

  6. F Takio与Blue的人生赢家之战

    Time Limit:1000MS  Memory Limit:65535K 题型: 编程题   语言: 无限制 描述 在那个风起云涌的SCAU ACM里,有两位人生赢家,他们分别是大洲Takio神和 ...

  7. [听听音乐]love is blue

    在朋友圈里听到这首歌,好像是中央台天气预报用过的背景音乐.百度了一下,大致如下: 1967年,在维也纳举行的欧洲电视歌唱大赛,卢森堡歌手薇基·琳德洛丝(Vicky Leandros)演唱了一首由彼埃尔 ...

  8. poj 3080 Blue Jeans

    点击打开链接 Blue Jeans Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 10243   Accepted: 434 ...

  9. Filter Blue Light for Better Sleep(APP 推荐)

    Filter Blue Light for Better Sleep By Carolyn Mohr11 May, 2016 Many people like to use their phones ...

随机推荐

  1. vim 的列操作

    删除列1.光标定位到要操作的地方.2.CTRL+v 进入“可视 块”模式,选取这一列操作多少行.3.d 删除. 插入列插入操作的话知识稍有区别.例如我们在每一行前都插入"() ": ...

  2. node 和npm环境安装

    node 安装 1.下载node二进制文件 [root@baolin-images#>> ~]#wget https://nodejs.org/dist/v10.16.0/node-v10 ...

  3. JAVA数据库连接池的革命 -- 从BoneCP到HikariCP(转)

    从BoneCP到HikariCP 今天笔者本想更新一下项目中使用到的BoneCP版本的.却无意发现jolbox网站打不开了.起初以为是被墙掉了,经过一番查找,居然在BoneCP的Github站看到了如 ...

  4. 再问你Java内存模型的时候别再给我讲堆栈方法区

    在介绍Java内存模型之前,先来看一下到底什么是计算机内存模型,然后再来看Java内存模型在计算机内存模型的基础上做了哪些事情.要说计算机的内存模型,就要说一下一段古老的历史,看一下为什么要有内存模型 ...

  5. ubuntu上源码编译安装mysql5.7.27

    一.查看操作系统环境和目录结构,并创建mysql用户和组,以及规划安装mysql所需要的目录. #cat /etc/issue 查看发行版本信息: #cat  /proc/version 查看正在运行 ...

  6. 【JZOJ3635】【BOI2012】Peaks

    ╰( ̄▽ ̄)╭ 有一个居住在多山岛屿的登山家,已经攀上了一座山峰,并且要攀爬另外一座更高的山峰. 更精确地说,岛上的每一点都有一个大于零的海拔(海面的海拔为零),并且如果登山家位于海拔Ei的山峰上,那 ...

  7. tftp-server服务器搭建

    学习搭建TFTP服务器(步骤来于网上) 以contos6.5为例 执行下面的命令能够看到服务是否已经启动,若已经启动则不用安装,否则需要安装下面的步骤安装tftp-server服务器 netstat ...

  8. Python接口自动化(二)接口开发

    django 配置开发环境 相关命令 python manage.py runserver 127.0.0.1:8000在指定的地址和端口启动服务 python manage.py startapp ...

  9. Dubbo报org.I0Itec.zkclient.exception.ZkNoNodeException异常

    解决办法就是添加zkclient的jar,maven工程的话增加如下引用: <dependency>     <groupId>com.github.sgroschupf< ...

  10. day39 10-Spring的AOP:基于AspectJ的切点定义

    切点是我们真正应用在哪些方法上,增强的那些方法上,就是add().update()和find().delete()是没用的.没用的话就是这三个方法.为什么要定义一个切点呢? 所以可以直接在切面中定义一 ...