bzoj 3874: [Ahoi2014]宅男计划
Description
Input
Output
输出仅包含一行一个整数表示JYY可以宅的最多的天数。
Sample Input
5 0
10 2
Sample Output
#include<cstdio>
#include<algorithm>
#define ll long long
using namespace std; ll n,m,f,nn;
ll p,ca,w;
struct na{
ll a,b;
}b[],o[];
inline ll max(ll a,ll b){return a>b?a:b;}
inline ll min(ll a,ll b){return a<b?a:b;}
inline ll read(){
p=;ca=getchar();
while(ca<''||ca>'') ca=getchar();
while(ca>=''&&ca<='') p=p*+ca-,ca=getchar();
return p;
}
inline ll fa(ll x){
ll d=m-x*f,ans=,da=,u;
for (register int i=;i<=nn;i++){
if (o[i].b>=da) w=min(d/o[i].a/x,o[i].b-da+),ans+=w*x,da+=w,d-=w*x*o[i].a;
if (o[i].b>=da) w=min(d/o[i].a,x),ans+=w,d-=w*o[i].a,da++;
}
//printf("%lld %lld\n",x,ans);
return ans;
}
inline bool cmp(na a,na b){
if (a.a==b.a) return a.b>b.b;
return a.a<b.a;
}
int main(){
register int i,j;
m=read();f=read();n=read();
for (i=;i<n;i++) b[i].a=read(),b[i].b=read();
sort(b,b+n,cmp);o[]=b[];nn=;
for (i=;i<n;i++) if (b[i].b>o[nn].b) o[++nn]=b[i];
ll l=,r=m/f,mid1,mid2,w;
while(l<r-){
w=(r-l+)/;mid1=l+w;mid2=mid1+w;
if (fa(mid1)<fa(mid2)) l=mid1;else r=mid2;
//printf("%lld %lld %lld %lld\n",l,mid1,mid2,r);
}
ll ans=;
for (ll i=l;i<=r;i++) ans=max(ans,fa(i));
printf("%lld\n",ans);
}
bzoj 3874: [Ahoi2014]宅男计划的更多相关文章
- bzoj3874&2832 [Ahoi2014]宅男计划 模拟退火,三分
[Ahoi2014&Jsoi2014]宅男计划 Time Limit: 1 Sec Memory Limit: 256 MBSubmit: 962 Solved: 371[Submit][ ...
- [洛谷P4040] AHOI2014 宅男计划
题目背景 自从迷上了拼图,JYY就变成了个彻底的宅男.为了解决温饱问题,JYY不得不依靠叫外卖来维持生计. 问题描述 外卖店一共有N种食物,分别有1到N编号.第i种食物有固定的价钱Pi和保质期Si.第 ...
- [BZOJ3874][AHOI2014] 宅男计划
Description 外卖店一共有N种食物,分别有1到N编号.第i种食物有固定的价钱Pi和保质期Si.第i种食物会在Si天后过期.JYY是不会吃过期食物的.比如JYY如果今天点了一份保质期为1天的食 ...
- Bzoj 3874: [Ahoi2014&Jsoi2014]宅男计划 三分+贪心
3874: [Ahoi2014&Jsoi2014]宅男计划 Time Limit: 1 Sec Memory Limit: 256 MBSubmit: 861 Solved: 336[Su ...
- [luogu] P4040 [AHOI2014/JSOI2014]宅男计划(贪心)
P4040 [AHOI2014/JSOI2014]宅男计划 题目背景 自从迷上了拼图,JYY就变成了个彻底的宅男.为了解决温饱问题,JYY不得不依靠叫外卖来维持生计. 题目描述 外卖店一共有N种食物, ...
- 「AHOI2014/JSOI2014」宅男计划
「AHOI2014/JSOI2014」宅男计划 传送门 我们首先要发现一个性质:存货天数随买食物的次数的变化类似于单峰函数. 具体证明不会啊,好像是二分加三分来证明?但是没有找到明确的严格证明. 感性 ...
- 【BZOJ3874】[AHOI&JSOI2014]宅男计划(贪心,三分)
[BZOJ3874][AHOI&JSOI2014]宅男计划(贪心,三分) 题面 BZOJ 洛谷 题解 大力猜想一最长的天数和购买外卖的总次数是单峰的.感性理解一下就是买\(0\)次是\(0\) ...
- 外卖(food) & 洛谷4040宅男计划 三分套二分&贪心
food评测传送门 [题目描述] 叫外卖是一个技术活,宅男宅女们一直面对着一个很大的矛盾,如何以有限的金钱在宿舍宅得尽量久. 外卖店一共有 N 种食物,每种食物有固定的价钱 Pi 与保质期 Si ...
- BZOJ3874:[AHOI2014&JSOI2014]宅男计划(爬山法)
Description [故事背景] 自从迷上了拼图,JYY就变成了个彻底的宅男.为了解决温饱问题,JYY 不得不依靠叫外卖来维持生计. [问题描述] 外卖店一共有N种食物,分别有1到N编号.第i种 ...
随机推荐
- JavaScript基础1——基本概念
关于JS的概念 JavaScript 是一种弱类型语言. JavaScript 是一种客户端脚本语言(脚本语言是一种轻量级的编程语言). JavaScript是基于对象的.(因为面向对象需要具有封装. ...
- jQuery对表单元素的取值和赋值操作代码(转)
使用常规的思路:$("#keyword").value 取值是取不到的,因为此时$('#keydord')已经不是个element,而是个jquery对象,所以应该使用:$(&qu ...
- 为了CET-4!
Directions For tiis part,you are allowed 30 minutes to write an essay.Suppose there are two options ...
- Cat 客户端采用什么策略上报消息树
策略分类 目前搞清楚两种 第一种(蓝色):默认服务器列表中选一个,算法核心是根据应用名的哈希值取模.也就是说同一个应用始终打到同一台服务器上,如果这台服务器挂了,另选一台服务器. 第二种(红色):应用 ...
- SharedPreferences 存List集合,模拟数据库,随时存取
PS:SharedPreferences只要稍微学过一点就会用,他本身通过创建一个Editor对象,来存储提交,而editor可以存的格式为 他里面可以存一个Set<String> Set ...
- vue.js之过滤器,自定义指令,自定义键盘信息以及监听数据变化
一.监听数据变化 1.监听数据变化有两种,深度和浅度,形式如下: vm.$watch(name,fnCb); //浅度 vm.$watch(name,fnCb,{deep:true}); //深度监视 ...
- java推送数据到app--极光推送
之前项目有用到需要把数据推送到app端 采用的是极光推送 特此把工具类和pom.xml需要的jar整理如下 pom.xml需要jar如下 <!-- 极光推送 --> <depende ...
- SVN添加用户权限
点击properties
- K:java 断言 assert 初步使用:断言开启、断言使用
@转自天地悠悠的个人博客 主要总结一下在eclipse中如何使用断言. (一)首先明确: java断言Assert是jdk1.4引入的. jvm 断言默认是关闭的. 断言是可以局部开启的,如:父类禁止 ...
- thinkinginjava学习笔记04_初始化与清理
java沿用了c++的构造器,使用一个和类名完全一样的方法作为类的构造器,可以有多个构造器来通过不同的参数进行构造,称为重载:不仅是构造器可以重载,其他方法也一样通过不同的形参以及不同的返回值来实现重 ...