当前位置:网站首页>(2022牛客多校五)B-Watches(二分)
(2022牛客多校五)B-Watches(二分)
2022-08-02 06:45:00 【AC__dream】
题目:
样例输入:
4 5
3 4 5 6样例输出:
1题意:给定n件商品的价格,如果你选购第k件商品,那么购买第i件物品的花费就是ai+k*i,问m元最多能买多少件(第i件是原序列中的第i个)
分析:我们容易发现的一点是答案具有单调性,我能买k件物品,那么我就一定能买k-1件商品,这是显然的,所以我们就可以对商品进行排序,对于每次二分的k我们都需要按照ai+k*i按照从小到大进行排序,然后从前往后贪心地选取即可,看用m元最多能买多少件商品,如果大于k返回true,否则返回false。
下面是代码:
#include<cstdio>
#include<iostream>
#include<algorithm>
#include<cstring>
#include<map>
#include<queue>
#include<vector>
#include<cmath>
using namespace std;
const int N=1e5+10;
struct node{
int id,v;
}p[N];
int mid,n,m;
bool cmp(node a,node b)
{
return a.v+a.id*mid<b.v+b.id*mid;
}
bool check(int k)
{
long long ans=0;
sort(p+1,p+n+1,cmp);
for(int i=1;i<=k;i++)
ans+=p[i].v+1ll*p[i].id*k;
return ans<=m;
}
int main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)
scanf("%d",&p[i].v),p[i].id=i;
int l=0,r=n;
while(l<r)
{
mid=l+r+1>>1;
if(check(mid)) l=mid;
else r=mid-1;
}
printf("%d",l);
return 0;
}
边栏推荐
- 2022.07.31(LC_6133_分组的最大数量)
- 分离轴定理SAT凸多边形精确碰撞检测
- 逆变器绝缘检测检测功能及软件实现
- 2022年7月18日-7月31日(Ue4视频教程和文档,20小时。合计1412小时,剩8588小时)
- 【图像隐藏】基于matlab混合DWT-HD-SVD数字图像水印方法技术【含Matlab源码 2007期】
- 【机器学习】实验5布置:AAAI会议论文聚类分析
- 【ROS基础】map、odom、base_link、laser 的理解 及其 tf 树的理解
- 2020美亚团队赛复盘
- chrome 插件开发指南
- 59:第五章:开发admin管理服务:12:MongoDB的使用场景;(非核心数据,数据量比较大的非核心数据,人脸照片等隐私的小文件;)
猜你喜欢

FaceBook社媒营销高效转化技巧分享

Day 4 of HCIP

See the picture to understand | How to choose sales indicators to measure the health of business growth

入门opencv,欢笑快乐每一天

关于ue4.27像素流送打包后的本地服务器问题

【CNN回归预测】基于matlab卷积神经网络CNN数据回归预测【含Matlab源码 2003期】

【故障诊断分析】基于matlab FFT轴承故障诊断(包络谱)【含Matlab源码 2002期】

2022.07.31(LC_6132_使数组中所有元素都等于零)

Neo4j 中文开发者月刊 - 202207期

文件上传漏洞(二)
随机推荐
【机器学习】实验5布置:AAAI会议论文聚类分析
PMP新考纲考试内容介绍
Redis 常用命令和基本数据结构(数据类型)
2022夏暑假每日一题(六)
Project development specification
交换网络----三种生成树协议
数据库概论之MySQL表的增删改查2
Analysis of GCC compiler technology
解决C#非静态字段、方法或属性“islandnum.Program.getIslandCount(int[][], int, int)”要求对象引用
yml字符串读取时转成数字了怎么解决
【ROS基础】map、odom、base_link、laser 的理解 及其 tf 树的理解
【图像隐藏】基于matlab混合DWT-HD-SVD数字图像水印方法技术【含Matlab源码 2007期】
typescript ‘props‘ is declared but its value is never read 解决办法
线程的创建方式
实例029:反向输出
如何设计静态资源缓存方案
PHP Warning: putenv() has been disabled for security reasons in phar
【暑期每日一题】洛谷 P3156 【深基15.例1】询问学号
Vscode connect to remote server "Acquiring the lock on the/home / ~ 'problem
chrome plugin development guide