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

好的域名 org 网站/sem优化是什么

好的域名 org 网站,sem优化是什么,佛系汉化组.wordpress,在淘宝上做网站靠谱吗请注意,不建议读者对于每道题均编代码,码量极大 T1 Description 给定一个序列,支持区间加与区间乘与区间查询和的操作。 Solution 一道线段树板子题。 我们同样维护线段树的区间信息与懒标记,只不过此时懒标记记录的有两个值…

请注意,不建议读者对于每道题均编代码,码量极大

T1

Description

给定一个序列,支持区间加与区间乘与区间查询和的操作。

Solution

一道线段树板子题。

我们同样维护线段树的区间信息与懒标记,只不过此时懒标记记录的有两个值,即kkkbbb,表示该节点已经乘kkkbbb了,而其子节点尚未做过此种操作。

于是,我们可以在O(qlog2n)O(qlog_2n)O(qlog2n)的时间复杂度内解决本题。

T2

Description

给定一个序列,支持区间修改与每次查询在1−i1-i1i中最后一个不小于xxx的位置。

Solution

比较裸的线段树。

每个线段树的节点维护的均为该区间的内的最大值。区间修改的方式不变,对于题目中的这种查询,我们直接从111号节点向下进行搜索。如果该节点所代表的区间被完全包含在查询区间内,那么我们便判断,该区间的最大值是否大于等于kkk;如果不是,就直接返回,否则看下它的两个子区间,如果它的右子区间的最大值不小于kkk,就贪心地向右搜去寻找更大的iii,否则向左。

于是,本题就可以在O(qlog2n)O(qlog_2n)O(qlog2n)的时间复杂度下解决。

T3

Description

给定一个序列,支持区间查询最大子段和。

Solution

考虑对于一个线段树节点,我们维护什么。

维护三个内容:

lminlminlmin: 从最左边开始连续的一段区间的最大和

lmaxlmaxlmax: 从最右边开始连续的一段区间的最大和

smaxsmaxsmax: 维护这个区间的最大子段和;

sumvsumvsumv: 维护这个区间各数之和。

显然,①②都符合区间加法,③可以通过其子区间的①②得到。

tree[rt].lmin=max(tree[2*rt].lmin,tree[2*rt].sumv+tree[2*rt+1].lmin)
tree[rt].lmax=max(tree[2*rt].lmin,tree[2*rt].sumv+tree[2*rt+1].lmax)
tree[rt].sumv=tree[2*rt].sumv+tree[2*rt+1].sumv
tree[rt].smax=max(tree[2*rt].smax,tree[2*rt+1].smax,tree[2*rt].rmax+tree[2*rt+1].lmax)

于是,我们便可以在O(qlog2n)O(qlog_2n)O(qlog2n)的时间复杂度内解决本题,如果忽略巨大的常数的话

T4

Description

给定一个序列,支持区间取反(每个数都乘−1-11)和查询最大子段和。

Solution

做法与T3T3T3基本相同,但是还要多维护几个东西。

lminlminlmin: 从最左边开始连续的一段区间的最小和

rminrminrmin: 从最右边开始连续的一段区间的最小和

sminsminsmin: 维护这个区间的最小子段和;

这三个东西样符合区间加法,上传公式与T3T3T3基本相同。

若区间乘−1-11,我们就将该区间的最小子段和与最大子段和乘上−1-11后交换即可

于是时间复杂度仍为O(qlog2n)O(qlog_2n)O(qlog2n)如果不考虑巨大无比的常数的话

T5

Description

给定一个序列,支持单点修改与区间查询不能组成的最小的数。

若对于一个区间xxx能组成是指,能够在该区间中选一些数,它们的和正好等于xxx。不能组成则相反。

n≤105,ai≤107n≤10^5, a_i≤10^7n105,ai107,时限3000ms3000ms3000ms

Solution

首先,假设我们目前1−x1-x1x这些数都能得到,现在又加入进来一个数kkk

k≤x+1k≤x+1kx+1,则现在1−∑ai≤x+1ai1-\sum_{a_i≤x+1} a_i1aix+1ai这些数就都能得到啦;否则,直接输出x+1x+1x+1。因为,当k>x+1k>x+1kx+1时,由于在看到kkk之前x+1x+1x+1无法得到,现在kkk又没有组成有力的贡献,所以x+1x+1x+1总归无法得到。

于是,我们对于区间中,第iii个数二进制的位数为wiw_iwi。我们每次整个扫一遍各个iii的值(i≤log2mi≤log_2milog2m,其中mmm为序列中的最大值),架设对于二进制位数为iii的数的最小值为kkk,若kkk已经大于了x+1x+1x+1,那么就直接宣布结束并输出x+1x+1x+1;否则xxx加上二进制位数为kkk的数之和,iii的值也同时加111。所以,我们只需要开log2mlog_2mlog2m个线段树,维护区间最小值与区间和,那么对于询问中的查询某种二进制位数的最小值与和,我们就可以O(log2n)O(log_2n)O(log2n)地快速查询啦。

单点修改并没有产生多大的影响,假设把aaa变成了a+ta+ta+t,那么二进制位数同aaa的集合中相当于单点减去了aaa,二进制位数同a+ta+ta+t的集合中相当于单点加上了a+ta+ta+t,也可以用线段树轻松维护。

所以,时间复杂度为O(nlog2nlog2m)O(nlog_2nlog_2m)O(nlog2nlog2m),卡常后即可通过本题。

好神仙的题

T6

Description

给定一个序列,要求支持下面三种奇怪的操作:

①区间内所有的数aia_iai均变成ϕ(ai)\phi(a_i)ϕ(ai),即不大于aia_iai且与aia_iai互质的数的数量。

②区间所有的数均变为xxx

③区间查询和。

n≤106,ai≤107n≤10^6, a_i≤10^7n106,ai107

保证数据随机

Solution

观察一下几个操作,可以发现:

①貌似不太好搞,②③就是线段树轻松搞定的区间摊与区间查询(别跟我扯珂朵莉树)。

①既然不好搞,我们便随便用个数据上来试试看——比如这个数是212121,那么

21→12(ϕ(21)=12)→4→2→1→1……→121→12(\phi(21)=12)→4→2→1→1……→12112(ϕ(21)=12)42111

可以发现,任何一个数,经过多次做ϕ\phiϕ的操作,终究会让一个数变成111

那么,对于一个数,最多做多少次ϕ\phiϕ的操作会让它变成111呢?如果这个数是一个奇数,那么最劣情况会将它仅仅减去111;否则,这个数会除以222。为什么呢?因为若这个数是偶数,那么2,4,6……2,4,6……2,4,6均不与它互质,所以这个数就会被除以222。所以,最劣的情况就是,这个数是一个奇数,它轮流地被减一除222,可以发现变成111的最少操作次数是log2nlog_2nlog2n级别的。

于是,我们就可以直接用线段树来维护每个区间被修改的次数,如果达到了一定的次数就不管这个区间了,否则暴力修改;另外②③的做法是裸的线段树,这里不再解释。

只需要用线性筛预处理出每个值的ϕ\phiϕ即可。时间复杂度$O()


但是,会存在一种特殊的情况——

所有数都是很坑的数,需要做202020次①操作才能归000;每做202020次①操作后,就来一次区间摊,把所有数给搞回去,然后再让你做①操作,还有随时的③询问……

显然,在特殊构造的上述数据中,时间复杂度TTT飞成O(nq)O(nq)O(nq)

但是,需要注意,数据纯随机,出现这种情况的概率不到亿亿亿亿分之一,并不需要担心。

故总时间复杂度为O(qlog2n)O(qlog_2n)O(qlog2n)

http://www.jmfq.cn/news/5136283.html

相关文章:

  • 网站建设过程中的通用原则/个人网站的制作模板
  • 建一个手机网站需要多少钱/长沙seo排名公司
  • 如何选择合肥网站建设/上海公布最新情况
  • 网站已改版/好看的友情链接代码
  • 开个做网站要多少钱/如何建网站教程
  • 郑州专业旅游网站建设/网址域名大全
  • iis wordpress 多站点/北京seo业务员
  • 南宁网站制/直播营销策略有哪些
  • 网站建设项目创业计划书/百度客服怎么转人工
  • 山东生猪价格今日猪价/电商网站seo优化
  • 英文版wordpress/天津seo托管
  • 糗事百科网站模板/平台关键词排名优化
  • 嘉兴做网站/链接提取视频的网站
  • 自学考试网站建设与管理/做网络推广的公司
  • 高端定制网站公司哪家好/一个企业该如何进行网络营销
  • 做彩票生意要登陆哪个网站/哪里的网络推广培训好
  • 做网站都需要买什么问题/网络推广的平台
  • 医院做网站运维/正规接单赚佣金的app
  • 免费做网站靠谱么/地推网推平台
  • 教师个人网站建设/南京seo公司
  • xyz域名做网站好么/seo综合查询怎么进入网站
  • 新疆维吾尔自治区建设厅官方网站/百度实名认证
  • 怎么通过域名做网站/外贸推广建站
  • 做微网站多少钱/学生个人网页制作成品
  • 临汾做网站公司/网络营销策略的制定
  • 企业自建网站有哪些/百度指数查询移动版
  • 怎么把自己做的网站挂到外网上/长春网站建设公司哪家好
  • 合肥置地广场做网站的公司/网店培训机构
  • 哪里有做旅游包车的网站/百度怎么联系客服
  • 教做炸鸡汉堡视频网站/谷歌推广代理公司