http://codevs.cn/problem/2744/

时间限制: 1 s

 空间限制: 64000 KB

题目等级 : 钻石 Diamond

 查看运行结果
 
 

题目描述 Description

在某岛国,大多数居民都是渔民,这个国家的所有城镇都沿直线分布在海边。渔民们捕获大量的海鱼,但就象世界上大多数的渔民一样,他们并不喜欢吃鱼,所以他们决定从天朝收养一些贫困家庭的女孩纸,让她们来帮着吃鱼,顺便(和谐),国家规定每个城镇收养的贫困妹纸数量必须相等,这样才能建设和谐社会。

一条又长又直的公路贯穿整个海岸将所有的城镇连接了起来,所以每个城镇(除去第一个和最后一个)都直接和相邻的两个城镇相连接。一个妹纸一年要吃掉一吨鱼(但是依然可以保持苗条),每个城镇捕获的鱼既可以在本地吃也可以运往其它城市吃,在运输过程中,每公里要上贡一吨鱼作为过路费。

已知每个城镇一年的捕鱼产量,并假设运输方案是最佳的,计算最多能收奍多少个妹纸。

输入描述 Input Description

输入文件第一行包含一个整数N,其中1≤N≤100,000,表示城镇总数。

接下来的N行每行包含两个整数A和B,其中1≤A≤1,000,000,000,0≤B≤1,000,000,000,分别表示城镇的位置(坐标)和该城镇的捕鱼产量,所有城镇按其位置从小到大排序给出,注意问题一定存在正整数解。

输出描述 Output Description

输出文件仅一行包含一个整数表示每个城镇最多能够收养的妹纸数量。

样例输入 Sample Input

4

20 300

40 400

340 700

360 600

样例输出 Sample Output

415

数据范围及提示 Data Size & Hint

1≤A≤1,000,000,000,0≤B≤1,000,000,000,1≤N≤100,000

sum表示可以运到i点的鱼

如果sum是负值,再减去路费,就是先满足i城镇的,再处理下一个城镇

如果sum是正值,如果小于路费,就权当不要了,否则,减去路费运到下一个城镇

 #include <algorithm>
#include <cstdio>
#define LL long long using namespace std; const int N(+);
LL n,dis[N],fish[N]; LL l,r,mid,ans;
bool check(LL x)
{
LL sum=;
for(int i=;i<n;i++)
{
sum+=fish[i]-x;
if(sum<) sum-=dis[i+]-dis[i];
else if(sum<=dis[i+]-dis[i]) sum=;
else sum-=dis[i+]-dis[i];
}
return sum+fish[n]>=x;
} int main()
{
scanf("%lld",&n);
for(int i=;i<=n;i++)
scanf("%lld%lld",dis+i,fish+i),r+=fish[i];
for(;l<=r;)
{
mid=l+r>>;
if(check(mid))
{
l=mid+;
ans=mid;
}
else r=mid-;
}
printf("%lld",ans);
return ;
}

CODEVS——T2744 养鱼喂妹纸的更多相关文章

  1. .net妹纸转Java---java环境的搭建,myeclipse10.0 的安装环境变量配置和破解

    啦啦啦 ,因为公司项目需要,从我大火炉--大武汉被拖到了更大的火炉--大广西  其实一开始 我的内心是拒绝的. 但是我在大武汉呆了近2年木有出过远门,对, 生活除了眼前的苟且,还有远方的苟且.怀揣这样 ...

  2. 利用WiFi钓鱼法追邻居漂亮妹纸

    假设,你的邻居是一个妹纸.漂亮单身,你,技术狗,家穷人丑,集体户口.像借酱油这种老套搭讪方式的成功率对你来说实在很低. 你要做的是了解她,然后接近她.通过搜集更多的情报,为创造机会提供帮助. 初级情报 ...

  3. 拥抱ARM妹纸第二季 之 第二次 约会需要浪漫,这么大灯泡怎么弄?

    终于轮到俺的小穆出场啦.有请能让太阳也为之暗淡的小穆闪亮登场-,鼓掌吧,欢呼吧!-- ♪♪ We can burn brighter Than the sun ~~~ ♪♪ “谢谢---“ 唱的太棒啦 ...

  4. UESTC_秋实大哥与妹纸 2015 UESTC Training for Data Structures<Problem F>

    F - 秋实大哥与妹纸 Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 1500/1500KB (Java/Others) Submit ...

  5. 第一次当Uber司机,就拉到漂亮妹纸

    黑马哥的Uber司机端装上很久了,一次活儿也没拉,心里一直有一种当“张师傅”的冲动.黑马哥当Uber司机,肯定不是为了图挣钱,也不是因为Uber有“新约炮神器”的称号,能通过“拉活”来泡妹纸.黑马哥体 ...

  6. Math.random引发的骗术,绝对是用随机数骗前端妹纸的最佳方法

    我觉得今天我运气特好,今天我们来赌一赌,我们来搞个随机数,Math.floor(Math.random() * 10),如果这个数等于0到7,这个月的饭,我全请了,如果是8或9,你就请一个礼拜成不?于 ...

  7. 面试的妹纸问我:web缓存设置不是后台的事情吗?

    背景介绍 团队最近在招前端开发,早上收到一封简历,是个妹纸,从技能点来看还算符合要求,于是约了下午3点过来面试. 整个面试过程持续了大约40分钟,问的题目也比较常规,其中一道题就是"常见的性 ...

  8. 音乐出身的妹纸,零基础学习JAVA靠谱么

    问:表示音乐出身的妹纸一枚  某一天突然觉得身边认识的是一群程序员   突然想 要不要也去试试... 众好友都觉得我该去做个老师,可是我怕我会误人子弟,祸害祖国下一代..... 要不要 要不要 学Ja ...

  9. 微信小程序开发 [05] wx.request发送请求和妹纸图

    1.wx.request 微信小程序中用于发起网络请求的API就是wx.request了,具体的参数太多,此处就不再一一详举了,基本使用示例如下: wx.request({ url: 'test.ph ...

随机推荐

  1. 紫书 习题 10-13 UVa 11526(打表找规律+分步枚举)

    首先看这道题目,我预感商数肯定是有规律的排列的,于是我打表找一下规律 100 / 1 = 100 100 / 2 = 50  100 / 3 = 33  100 / 4 = 25  100 / 5 = ...

  2. sql暂时表的创建

    create table #simple  /*仅仅对当前用户有效.其它用户无法使用,断掉连接后马上销毁该表*/ ( id int not null ) select * from #simple c ...

  3. setTimeOut函数传参数

    这样使用,后面的4000无效 setTimeout(removeGift(customer_id,gift_id),4000); function removeGift(customer_id,gif ...

  4. thinkphp5项目--企业单车网站(四)

    thinkphp5项目--企业单车网站(四) 项目地址 fry404006308/BicycleEnterpriseWebsite: Bicycle Enterprise Websitehttps:/ ...

  5. js数组与字符串的相互转换方法 数组常用的方法

    1 数组转字符串 需要将数组元素用某个字符连接成字符串,示例代码如下: var a, b; a = new Array(0,1,2,3,4); b = a.join("-"); 二 ...

  6. 项目:rbac 基于角色的权限管理系统;

    - 简单示意流程图 - RBAC分析: - 基于角色的权限管理: - 权限等于用户可以访问的URL: - 通过限制URL来限制权限: - RBAC表结构组成: from django.db impor ...

  7. 打开文件对话框在xp和win7上的实现文件任意多选

    作者:朱金灿 来源:http://blog.csdn.net/clever101 在xp系统上进行文件多选,实际上其文件字符串数组的缓冲区是有限,并不能支持选择任意多个文件,为此以前我还写过一篇文章: ...

  8. BZOJ5408: string(广义后缀自动机,LCT)

    传送门 解题思路: 首先在后缀树上,确定了一个节点就相当于确定了一个串,那么一个点对应的串在另外一个点对应的串产生贡献,当且仅当这个点在当前点子树内. 那么考虑一个新的点在串中对串答案的贡献在一条树链 ...

  9. 数据库更新DATE类型的时间

    使用to_date() 进行格式转换 to_date('2018/11/16','yyyy/MM/dd') update tableName t set t.shipment_date = to_da ...

  10. Mysql学习总结(2)——Mysql超详细Window安装教程

    目录 一.安装包准备 二.开始安装 三.验证安装 四.客户端工具 一.安装包准备 1.下载MySql5.6 http://www.mysql.com/ 下载如下教程,这时要选MySql On Wind ...