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

免费制作贺卡的app关键词排名优化江苏的团队

免费制作贺卡的app,关键词排名优化江苏的团队,网站建设费可以抵扣进项税吗,如何替别人建网站挣钱P3992 [BJOI2017]开车 题意#xff1a; 题解#xff1a; 我们要先将问题转换 圈是车#xff0c;x是加油站。红色部分为车移动的路线 数组a是车数量的前缀和 数组b是加油站的前缀和 而a[i]与b[i]的差的绝对值就是对应的红色路被走的次数 现在车发生位置移动#xff0c;b数…P3992 [BJOI2017]开车 题意 题解 我们要先将问题转换 圈是车x是加油站。红色部分为车移动的路线 数组a是车数量的前缀和 数组b是加油站的前缀和 而a[i]与b[i]的差的绝对值就是对应的红色路被走的次数 现在车发生位置移动b数组没有影响a数组i到j这段整体减一 现在我们要做的就是维护a序列支持区间1/-1询问∑| a[i] - b[i] | 线段树不能实现 用分块实现 实现过程 按照下标分块每块按照a[i] - b[i] 排序 代码 代码为借鉴 #pragma optimize(Ofast) #includebits/stdc.h #define MAXN 150005 #define MAXB 2005 using namespace std; typedef long long ll;int N,B,Q; int a[MAXN], w[MAXN]; mapint,int mp; mapint,int::iterator it; mapint,int id;int q[MAXN][2]; struct Node{int w,val,id,sw;Node(int id0, ll val0, int w0):id(id), val(val), w(w){}bool operator (const Node n1) const{return val n1.val;} }; vectorNode adj[MAXN]; ll ANS 0, ans[MAXN], base[MAXN];void rebuild(int id){ANS - ans[id]; ans[id] 0;sort(adj[id].begin(), adj[id].end());for(int k0;kadj[id].size();k){ans[id] abs((ll)adj[id][k].val base[id]) * adj[id][k].w;if(k0) adj[id][k].sw adj[id][k].w;else adj[id][k].sw adj[id][k-1].sw adj[id][k].w;}ANS ans[id]; }void work(int l, int r, int f){int idl l/B, idr r/B;if(idlidr){for(int k0;kadj[idl].size();k){if(ladj[idl][k].id adj[idl][k].idr){if(f0) adj[idl][k].val - 1;if(f1) adj[idl][k].val 1;}}rebuild(idl);}else{if(idl1idr){for(int ididl1;ididr;id){//int lb 0, rb adj[id].size()-1, mid;if(f0){if(adj[id][rb].val base[id] 0){ans[id] adj[id][rb].sw;ANS adj[id][rb].sw;base[id] - 1;continue;}while(lb rb){mid (lb rb)/2;if(adj[id][mid].val base[id] 0) rb mid;else lb mid 1;}base[id] - 1;int p rb;if(p0){ans[id] - adj[id][adj[id].size()-1].sw;ANS - adj[id][adj[id].size()-1].sw;}else{ans[id] adj[id][p-1].sw;ANS adj[id][p-1].sw;ans[id] - adj[id][adj[id].size()-1].sw - adj[id][p-1].sw;ANS - adj[id][adj[id].size()-1].sw - adj[id][p-1].sw;}}else{if(adj[id][rb].val base[id] 0){ans[id] - adj[id][rb].sw;ANS - adj[id][rb].sw;base[id] 1;continue;}while(lb rb){mid (lb rb)/2;if(adj[id][mid].val base[id] 0) rb mid;else lb mid 1;}base[id] 1;int p rb;if(p0){ans[id] adj[id][adj[id].size()-1].sw;ANS adj[id][adj[id].size()-1].sw;}else{ans[id] - adj[id][p-1].sw;ANS - adj[id][p-1].sw;ans[id] adj[id][adj[id].size()-1].sw - adj[id][p-1].sw;ANS adj[id][adj[id].size()-1].sw - adj[id][p-1].sw;}}}}for(int k0;kadj[idl].size();k){if(ladj[idl][k].id adj[idl][k].idr){if(f0) adj[idl][k].val - 1;if(f1) adj[idl][k].val 1;}}rebuild(idl);for(int k0;kadj[idr].size();k){if(ladj[idr][k].id adj[idr][k].idr){if(f0) adj[idr][k].val - 1;if(f1) adj[idr][k].val 1;}}rebuild(idr);} }int pos[MAXN];int main(){scanf(%d, N);int x;for(int i1;iN;i){scanf(%d, x);pos[i] x;mp[x] 1;}for(int i1;iN;i){scanf(%d, x);mp[x] - 1;}scanf(%d, Q);for(int i1;iQ;i){scanf(%d%d, q[i][0], q[i][1]);if(mp.count(q[i][1])0) mp[q[i][1]] 0;}int n 0, x0 0;for(itmp.begin(); it!mp.end(); it){x it-first;id[x] n;w[n-1] x - x0;a[n] a[n-1] it-second;x0 x;}N n; B sqrt(N); //cerrB Bendl;for(int i1;iN;i){adj[i/B].push_back(Node(i,a[i],w[i]));}for(int id0;idN/B;id){rebuild(id);}printf(%lld\n, ANS);int l,r;for(int i1;iQ;i){l id[pos[q[i][0]]];r id[q[i][1]];pos[q[i][0]] q[i][1];//cerrwork l rendl;if(l r) work(l, r-1, 0);if(l r) work(r, l-1, 1);printf(%lld\n, ANS);}return 0; }
http://www.pierceye.com/news/473609/

相关文章:

  • 中国最大免费wap网站怎样才能建设只是于自己的网站
  • 装修网站平台排行榜wordpress做视频网站吗
  • flash网站建设价格播放器网站怎么做
  • 微网站 源码 免费文本编辑器 网站
  • 电商网站通用左侧弹出导航有南昌网站优化公司
  • 沈阳三好街做网站公司个人网页设计风格分析
  • 网站建设经费计划内容网站建设中存在的问题
  • 天凡建设股份有限公司网站苍山网站建设
  • 如何新建网站dw线下推广的渠道和方法
  • 网站友链wordpress火车头发布
  • 青海网站维护公司自己的网站叫什么
  • 微网站 淘宝客wordpress备案号放置
  • html5 手机网站 模版网站信息员队伍建设
  • 基金会网站开发方案政务公开网站建设重点
  • 影视网站制作网页游戏的软件
  • 企业做网站的费用如何科目青色网站欣赏
  • 做视频网站怎么赚钱的网站开发流程的三个部分
  • 牡丹江市建设行业协会网站广西住房城乡建设厅网站首页
  • 重庆网站关键词排名优化免费网页代理的推荐
  • 定制型网站怎么做重庆软件开发公司有哪些
  • 自适应型网站建设网站建设搭建是什么意思
  • 网站建设能够不同地方网址大全12345
  • 做网批那个网站好校园网站界面建设
  • 免费网站建设php济南网站建设公司官网
  • 徐汇网站推广网络营销的四个特点
  • 简易做网站wordpress插件tag
  • 红酒 公司 网站建设青岛安装建设股份公司网站
  • 小米路由hd 做网站营销型网站策划 建设的考试题
  • 运河网站制作自主建站平台
  • 万网 网站建设合同最好的网站开发语言