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

大型网站建设平台海外网站建站

大型网站建设平台,海外网站建站,专业做律师网站的公司吗,外贸网站建设是什么2023牛客暑期多校训练营8-C Clamped Sequence II https://ac.nowcoder.com/acm/contest/57362/C 文章目录 2023牛客暑期多校训练营8-C Clamped Sequence II题意解题思路代码 题意 解题思路 先考虑不加紧密度的情况,要支持单点修改,整体查询&#xff0…

2023牛客暑期多校训练营8-C Clamped Sequence II

https://ac.nowcoder.com/acm/contest/57362/C

文章目录

  • 2023牛客暑期多校训练营8-C Clamped Sequence II
    • 题意
    • 解题思路
    • 代码

题意

在这里插入图片描述

解题思路

先考虑不加紧密度的情况,要支持单点修改,整体查询,可以用值域线段树来求。设 t r e e [ x ] . n u m tree[x].num tree[x].num表示数值在 [ l , r ] [l,r] [l,r]区间的数的个数, t r e e [ x ] . s u m tree[x].sum tree[x].sum表示数值在 [ l , r ] [l,r] [l,r]区间的数的总和, t r e e [ x ] . a n s tree[x].ans tree[x].ans表示数值在 [ l , r ] [l,r] [l,r]区间的数的紧密度,结合下图,可以求得转移式:
在这里插入图片描述
n u m x = n u m l s o n + n u m r s o n s u m x = n u m l s o n + s u m r s o n a n s x = a n s l s o n + a n s r s o n + s u m r s o n × n u m l s o n − s u m l s o n × n u m r s o n num_x=num_{lson}+num_{rson}\\ sum_x=num_{lson}+sum_{rson}\\ ans_x=ans_{lson}+ans_{rson}+sum_{rson}\times num_{lson}-sum_{lson}\times num_{rson} numx=numlson+numrsonsumx=numlson+sumrsonansx=anslson+ansrson+sumrson×numlsonsumlson×numrson
此时我们加入紧凑的设定,对于每一对确定的 [ l , r ] [l,r] [l,r]我们都可以算出此时的答案:
a n s w e r = a n s l , r + s u m [ l , r ] × ( n u m [ 1 , l − 1 ] − n u m [ r + 1 , n ] ) + ( n u m [ 1 , l − 1 ] + n u m [ l , r ] ) × n u m [ r + 1 , n ] − ( n u m [ r + 1 , n ] + n u m [ l , r ] ) × n u m [ 1 , l − 1 ] answer=ans_{l,r}+sum_{[l,r]}\times(num_{[1,l-1]}-num_{[r+1,n]})+(num_{[1,l-1]}+num_{[l,r]})\\ \times num_{[r+1,n]}-(num_{[r+1,n]}+num_{[l,r]})\times num_{[1,l-1]} answer=ansl,r+sum[l,r]×(num[1,l1]num[r+1,n])+(num[1,l1]+num[l,r])×num[r+1,n](num[r+1,n]+num[l,r])×num[1,l1]
根据出题人所说,该答案是严格单峰的,所以可以用三分求解,但经过我实践却不太像,需要将三分的范围约束在最中间的数 ± d \pm d ±d再加上左右游移 2 ∼ 3 2\sim 3 23个数,大致能求出正确答案。

代码

#include<bits/stdc++.h>
#define ll long long
using namespace std;
const int N=1e5+5,M=1e6+5;
ll n,a[N],b[M],q;
struct node{ll num,l,r;ll sum,ans;node operator +(const node a){node t;t.num=num+a.num,t.sum=sum+a.sum;t.ans=num*a.sum-sum*a.num+ans+a.ans;t.l=l,t.r=a.r;return t;}
};
struct tree{node tr[M<<2];void build(int res,int l,int r){tr[res].l=l,tr[res].r=r;if(l==r){tr[res].num=b[l],tr[res].sum=b[l]*l;return;}int mid=l+r>>1;build(res<<1,l,mid);build(res<<1|1,mid+1,r);tr[res]=tr[res<<1]+tr[res<<1|1];}void add(int res,int x,ll d){int l=tr[res].l,r=tr[res].r;if(l==r&&l==x){tr[res].sum+=d*l;tr[res].num+=d;return;}int mid=l+r>>1;if(x<=mid)add(res<<1,x,d);else add(res<<1|1,x,d);tr[res]=tr[res<<1]+tr[res<<1|1];return;}node query(int res,int x,int y){if(x>y)return node{0,0,0,0,0};int l=tr[res].l,r=tr[res].r;if(x<=l&&y>=r){return tr[res];}int mid=l+r>>1;if(y<=mid)return query(res<<1,x,y);if(x>mid)return query(res<<1|1,x,y);return query(res<<1,x,y)+query(res<<1|1,x,y);}int kth(int id,int l,int r,int k){if(l==r) return l;int mid=l+r>>1;if(tr[id<<1].num>=k) return kth(id<<1,l,mid,k);else return kth(id<<1|1,mid+1,r,k-tr[id<<1].num);}
}t;
ll f(int l,int d){int r=l+d;node p=t.query(1,l,r);ll num1=p.num,ans1=p.ans,sum1=p.sum;ll numl=t.query(1,1,l-1).num,numr=t.query(1,r+1,M-1).num;return ans1-numl*(numr+num1)*l+numr*(numl+num1)*r+sum1*(numl-numr);
}
ll work(int d){int k=t.kth(1,1,M-1,n+1>>1);int l=max(1,k-d),r=min(M-1,k+d);ll ma=0;while(l+2<=r){int mi1=(r-l)/3+l,mi2=r-(r-l)/3;ll ma1=f(mi1,d),ma2=f(mi2,d);ma=max(ma,max(ma1,ma2));if(ma1>=ma2)r=mi2-1;else l=mi1+1;}for(int i=l;i<=r;i++)ma=max(ma,f(i,d));return ma;
}
int main(){ios::sync_with_stdio(false);cin>>n>>q;for(int i=1;i<=n;i++)cin>>a[i],b[a[i]]++;t.build(1,1,M-1);while(q--){int op;cin>>op;if(op==1){int x,d;cin>>x>>d;t.add(1,a[x],-1);t.add(1,d,1);a[x]=d;}else{int d;cin>>d;cout<<work(d)<<'\n';}}
}
http://www.15wanjia.com/news/20619.html

相关文章:

  • 2014 湖南个人网站备案可以做b2b吗站长工具ip地址查询
  • 怎样查看网站的权重谷歌搜索优化
  • 淄博网站制作公司托管网站关键词优化有用吗
  • 宝安网站设计哪家好seo搜索引擎优化排名报价
  • 做苗木免费网站求个没封的网站2022
  • 专业网站开发技术百度seo关键词报价
  • php 禁止电脑访问网站正规app推广
  • 陕西的建设厅官方网站京东seo搜索优化
  • 广州建设交易中心网站首页搜什么关键词你都懂的
  • 网站建设公司如何收费广安网站seo
  • 一个企业网站做几个关键词营销技巧和话术
  • 做网站客户要提供什么日本免费服务器ip地址
  • 供应链网站制作2023年7月最新新闻摘抄
  • 综合性b2b电子商务平台郑州seo顾问外包公司
  • 织梦移动网站后缀搜索引擎优化大致包含哪些内容或环节
  • 北京十大代理记账公司南宁seo规则
  • 化妆品网站制作网络营销推广主要做什么
  • 高端全屋定制十大名牌排行榜seo关键词排名优化推荐
  • 南京商城网站建设新手怎么做网络推广
  • 卧龙区网站制作恩施seo整站优化哪家好
  • 重庆网站制作一般需要多少钱网站群发软件
  • 部门网站建设注意事项市场调研分析报告范文
  • 移动端的网站怎么做网络推广求职招聘交流群
  • seo 刷网站url市场调研报告范文3000字
  • 最好wordpress积分付费插件企业网站排名优化
  • 网站规划市场分析seo排名快速刷
  • 网站怎么做推广和宣传语网站seo优化课程
  • 域名有什么用福建seo推广方案
  • 怎么策划一个网站盐酸达泊西汀片是治疗什么的药物
  • 做特殊原产地证的网站晋中网络推广