当前位置: 首页 > news >正文

陕西电商网站建设长沙网站推广公司

陕西电商网站建设,长沙网站推广公司,好买卖做网站,成都的做网站公司题解:ABC321D - Set Menu 题目 链接:Atcoder。 链接:洛谷。 难度 算法难度:B。 思维难度:C。 调码难度:B。 综合评价:见洛谷链接。 算法 枚举二分查找。 思路 先对b升序排序&#x…

题解:ABC321D - Set Menu

·题目

链接:Atcoder。

链接:洛谷。

·难度

算法难度:B。

思维难度:C。

调码难度:B。

综合评价:见洛谷链接。

·算法

枚举+二分查找。

·思路

先对b升序排序,并记录前缀和,然后对于每个a[i],找到一个分解点,使得它左侧所有与a[i]有关的套餐的原价都比p小(或等于),剩下的都大于p。那么端点左侧的采用原价购买,(l表示分界点左侧)即s[l]+a[i]*l,右侧的就采用p价格购买,花费p*(m-l)。累加每个a[i]即可。

·代价

O((n+m)*log(m)),其中O(m*log(m))是排序,O(n*log(m))是二分查找,也就是程序核心。

·细节

升序排序用sort。

·代码

#include<bits/stdc++.h>
#define M 220000
#define N 220000
using namespace std;
string out="";
__int128 a[N]={},b[M]={},s[M]={},ans=0,m=0,n=0,p=0;
//其中不同题意的有:s表示b的前缀和,ans为答案
int tmp1=0,tmp2=0,tmp3=0;
//输入媒介
int main(){scanf("%d%d%d",&tmp1,&tmp2,&tmp3);n=tmp1;m=tmp2;p=tmp3;for(int i=1;i<=n;i++){scanf("%d",&tmp1);a[i]=tmp1;}for(int i=1;i<=m;i++){scanf("%d",&tmp2);b[i]=tmp2;}//输入sort(b+1,b+1+m);//给b排序for(int i=1;i<=m;i++){s[i]=s[i-1]+b[i];}//求前缀和    for(int i=1;i<=n;i++){int l=0,r=m+1;while(l+1<r){int mid=(l+r)/2;if(a[i]+b[mid]<=p){l=mid;}else{r=mid;}}//二分查找ans+=s[l]+a[i]*l+p*(m-l);//答案累加}while(ans>0){out=out+char('0'+ans%10);ans/=10;}reverse(out.begin(),out.end());printf("%s\n",out.c_str());//输出答案return 0;
}

·注意

long long都不行,要用__int128。

http://www.hkea.cn/news/436027/

相关文章:

  • 网络推广seo公司seo排名的方法
  • 南山做网站多少钱百度资讯
  • 西安哪里有做网站的小学生收集的新闻10条
  • 做游戏网站有几个要素seo网站关键词优化报价
  • 蓬业东莞网站建设技术支持东莞做网站公司首选
  • 网站版式设计获客渠道有哪些
  • 今日军事新闻简短扬州seo优化
  • 国外好看的教育类网站模板下载东莞做网站最好的是哪家
  • 微擎与wordpress快速优化seo软件推广方法
  • 英文网站设计哪家好免费网站搭建
  • 网站建设公司 销量深圳谷歌seo公司
  • 新蔡哪有做网站建设的全球疫情今天最新消息
  • 怎么做平台网站百度seo报价方法
  • 帮人做网站 怎么收费怎么用网络推广
  • 网站排名优化建设百度广告投放技巧
  • 文件服务器网站搭建教程好的竞价托管公司
  • 黑龙江省城乡和住房建设厅网站首页百度链接地址
  • 网站模板修改工具专业seo关键词优化
  • 口碑好的句容网站建设yahoo搜索
  • 深圳网站建设外贸公司价格网络营销的背景和意义
  • 长春网站建设硕成传媒seo快速排名优化公司
  • web网站开发能使用c 吗免费建立个人网站申请
  • 织梦网站修改教程视频网站优化培训学校
  • 南沙区交通和建设局网站中国十大网络销售公司
  • 免费建设网站的方法百度网址大全 官网
  • 手机网站设计制作公司微信推广费用一般多少
  • 建设网站需要什么注册域名费用一般多少钱
  • 女性门户网站源码百度指数功能有哪些
  • 怎么帮公司做网站建设谷歌搜索引擎免费入口 香港
  • 请写出网站建设前期需要做的准备外贸定制网站建设电话