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

终身免费网站建设百度客服人工电话多少

终身免费网站建设,百度客服人工电话多少,如何做视频网站流程图,编写这个网站模板要多少钱看没有题解,交一发。 题目传送门 思路 看到题面容易想到用线段树做,但是这道题要用一个形状为满三叉树的线段树,这样才方便统计答案。 首先来看节点的编号,从上到下,从左到右依次给树上的节点进行编号,…

看没有题解,交一发。

题目传送门

思路

看到题面容易想到用线段树做,但是这道题要用一个形状为满三叉树的线段树,这样才方便统计答案。

首先来看节点的编号,从上到下,从左到右依次给树上的节点进行编号,容易发现,设一个非叶子节点的编号为 x x x,则它的三个儿子节点的编号为 3 x − 1 , 3 x , 3 x + 1 3x-1,3x,3x+1 3x1,3x,3x+1,配一张图方便大家理解(图微丑,轻喷)。

所以在建树和修改时,就可以直接算出子节点的编号。

剩下的就和线段树差不多了,直接上代码。

代码

#include <bits/stdc++.h>
using namespace std;
const int N=2e6+6;//数组开大一点
int n,q;
bool t[N];
char s[N];
void build(int cur,int l,int r){//建树if(l==r){t[cur]=s[l]-'A';//0表示A,1表示Breturn;}int mid1=l+(r-l+1)/3-1,mid2=l+2*(r-l+1)/3-1;//将区间平均分成三部分build(cur*3-1,l,mid1);build(cur*3,mid1+1,mid2);build(cur*3+1,mid2+1,r);t[cur]=(t[cur*3-1]+t[cur*3]+t[cur*3+1]>1);//如果1的个数大于1,则B多,否则A多
}
void modify(int cur,int l,int r,int x){//单点修改if(l==r && l==x){t[cur]^=1;//修改return;}int mid1=l+(r-l+1)/3-1,mid2=l+2*(r-l+1)/3-1;if(x<=mid1)modify(cur*3-1,l,mid1,x);else if(x<=mid2)modify(cur*3,mid1+1,mid2,x);elsemodify(cur*3+1,mid2+1,r,x);t[cur]=(t[cur*3-1]+t[cur*3]+t[cur*3+1]>1);//重新统计答案
}
int main(){scanf("%d%d",&n,&q);scanf("%s",s+1);n=strlen(s+1);build(1,1,n);while(q--){int p;scanf("%d",&p);modify(1,1,n,p);printf("%c\n",t[1]+'A');//t[1]为最终的结果输出}return 0;
}
http://www.dtcms.com/wzjs/184446.html

相关文章:

  • 建设设计公司网站如何让网站快速收录
  • 移动版网站模板济源新站seo关键词排名推广
  • 北京网站建设网站建设百度公司总部在哪里
  • 网站建设有多少公司万秀服务不错的seo推广
  • wordpress banner在哪吉林seo外包
  • 《民用建筑通用规范》巢湖seo推广
  • 网站建设丨找王科杰专业网络广告一般是怎么收费
  • 好的网站建设公司百度移动权重
  • 成都网站建设哪家强聊城seo培训
  • 做网站片头的软件关键词挖掘站长
  • 网站建设收费价目表哪家网络公司比较好
  • 泰安网站建设公司怎样推广自己的产品
  • 做捕鱼网站电话号码开封网站推广
  • 做微信网站的公司泰州seo网络公司
  • 北京王府井大街好口碑关键词优化地址
  • 如何用个人电脑做网站超级外链工具 增加外链中
  • 网站建设及维护协议攀枝花网站seo
  • 优化什么建立生育支持政策体系北京seo收费
  • 做英文网站网上推广培训
  • 滁州注册公司流程和费用整站优化代理
  • 长沙网站建设定制广州品牌营销服务
  • 金融培训网站源码seo外链怎么做
  • 个人网站建设的收获微信公众号怎么创建
  • 哪里有免费的网站域名新闻源
  • 低价备案域名购买seo在线培训机构排名
  • 17网站一起做网店优势与劣势优化大师班级
  • 网站建设的价值关键词站长工具
  • 如何自建一个便宜的网站网游推广员
  • 人才网站建设的目标公关服务
  • 义乌seo厦门seo排名收费