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

服务号不认证可做微网站吗口碑营销的例子

服务号不认证可做微网站吗,口碑营销的例子,深圳网络营销技巧,中国外贸公司排行榜ST表不仅能处理区间最值问题,凡是符合结合律且可重复贡献的信息查询都可以使用ST表高效进行。可重复贡献的意义在于,可以对两个交集不为空的区间进行信息合并,显然最大值、最小值、最大公约数、最小公倍数、按位或、按位与都符合这个条件。 在…

ST表不仅能处理区间最值问题,凡是符合结合律且可重复贡献的信息查询都可以使用ST表高效进行。可重复贡献的意义在于,可以对两个交集不为空的区间进行信息合并,显然最大值、最小值、最大公约数、最小公倍数、按位或、按位与都符合这个条件。

在C++算法中,ST表的实现为以下步骤:

预处理阶段:构建一个二维数组 st [ ][ ],其中 st[i][j] 表示从下标 i 开始、长度为 2^j 的区间内的最值(或其他查询结果)。
预处理阶段时间复杂度为 O(nlogn),其中 n 表示数组的长度。
查询阶段:对于区间查询 [l, r],可以通过 st[l][k] 和 st [ r-2^k+1 ][k] 的最值(或其他查询结果)来快速获得该区间的查询结果,其中 k 是满足 2^k <= r - l + 1 的最大整数。

void buildST(int n) {for (int i = 0; i < n; i++) {st[i][0] = arr[i];}for (int j = 1; (1 << j) <= n; j++) { //枚举区间长度for (int i = 1; i + (1 << j)+1 <= n; i++) { //枚举区间开始起点st[i][j] = max(st[i][j-1], st[i + (1 << (j-1))][j-1]); //预处理区间最大值}}
}
int query(int l, int r) {int k = log2(r - l + 1);return max(st[l][k], st[r - (1 << k) + 1][k]);
}

这里详细解释一下查询代码的原理:

预处理阶段(buildST 函数)中,我们构建了一个二维数组 st,其中 st[i][j] 表示从位置 i 开始、长度为 2^j 的区间内的最大值。

在 query 函数中,我们首先计算区间的长度 r - l + 1,然后使用 log2 函数找到一个整数 k,使得 2^k 是不大于区间长度的最大的2的幂次方。这个 k 值对应了我们在预处理阶段建立的 st 数组的列索引。

接着,我们通过 st[l][k] 和 st[r - (1 << k) + 1][k] 来找到区间 [l, r] 中的最大值。这里的 (1 << k) 表达式实际上就是 2^k,它代表了以 l 为起点、长度为 2^k 的区间的左半部分,而 r - (1 << k) + 1 表示了以 r 为终点、长度为 2^k 的区间的右半部分。

通过比较这两个区间的最大值,我们可以得到区间 [l, r] 中的真正最大值。

下面一个模板题:st表模版题

模板代码:

#include<bits/stdc++.h>
using namespace std;
#define int long long
#define lowbit(x) ((x)&(-x))
#define fi first
#define se second
#define PII pair<int,int>
const int inf=1e18;
const int N=1e5+10;
int a[N],st[N][20];
void buildST(int n) {for (int j = 1; (1 << j) <= n; j++) { for (int i = 1; i + (1 << j)-1 <= n; i++) { st[i][j] = max(st[i][j-1], st[i + (1 << (j-1))][j-1]); }}
}
int query(int l, int r) {int k = log2(r - l + 1);return max(st[l][k], st[r - (1 << k) + 1][k]);
}
void solve(){int n,m;cin>>n>>m;for(int i=1;i<=n;i++){cin>>a[i];st[i][0]=a[i];}buildST(n);while(m--){int l,r;cin>>l>>r;cout<<query(l,r)<<"\n";}
}
signed main(){ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);//cout<<fixed<<setprecision(12); int T=1;//cin>>T;while(T--)solve();
}

http://www.dtcms.com/wzjs/129537.html

相关文章:

  • 烟台seo网站推广百度客服中心电话
  • 青县做网站北京百度seo排名点击器
  • 企业 php网站建设百度搜索入口官网
  • 网站如何判断做的好不好产品seo怎么优化
  • ssm门户网站开发公关公司经营范围
  • 武汉地区做网站合肥建站公司seo
  • 采集电影做的网站成都百度seo优化公司
  • 大连短视频代运营seo网站优化培训找哪些
  • 企业可以做哪些网站什么是seo搜索引擎优化
  • b2c网站模块win10优化大师官网
  • 微软雅黑做网站会涉及到侵权吗东莞公司网上推广
  • 企业 网站建设推广方式有哪些
  • 苏宁易购的网站建设代运营电商公司
  • wordpress 博客源码优化关键词方法
  • 本地环境建设网站sem和seo的关系
  • 品牌网站设计步骤宁波网络推广优化方案
  • 做服装网站服务推广平台免费b2b网站大全
  • wordpress 自适应 主题楚雄seo
  • 东莞免费自助建站模板新郑网络推广公司
  • 公众号授权网站长春百度网站优化
  • 餐饮酒店网站建设做企业网站建设公司哪家好
  • 做网站挣钱打擦边球做神马seo快速排名软件
  • 上海专业网站建设价格网站seo推广优化教程
  • 米各庄网站建设网站建设方案优化
  • 找人设计网页多少钱高级seo课程
  • 做淘宝客最好的网站是什么网站站内推广方案
  • 如何写网站代码是什么原因百度链接收录
  • 网站建设案例多少钱外贸新手怎样用谷歌找客户
  • 乡镇网站个人做可以不广州外包网络推广公司
  • 长沙网站优化外包电商从零基础怎么学