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

淘宝联盟网站推广怎么做关键词优化计划

淘宝联盟网站推广怎么做,关键词优化计划,网站空间购买多少钱,织梦cms做网站怎么样传送门 题意#xff1a;如果一个字符串可以拆分为AABB的形式#xff0c;其中A和B是任意非空字符串#xff0c;则我们这种拆分是优秀的。求给定串的所有子串的拆分方案数之和。 N≤30000N \leq30000N≤30000 本来是个神仙题 但明明一个O(nlogn)O(nlogn)O(nlogn)的题为啥只…传送门 题意如果一个字符串可以拆分为AABB的形式其中A和B是任意非空字符串则我们这种拆分是优秀的。求给定串的所有子串的拆分方案数之和。 N≤30000N \leq30000N≤30000 本来是个神仙题 但明明一个O(nlogn)O(nlogn)O(nlogn)的题为啥只出300003000030000啊而且只有一个点……搞不懂 显然求出所有位置作为AA的开始和结束位置有多少个然后乘一下加起来 接下来是个神奇做法 枚举我们要求的长度lenlenlen然后每隔lenlenlen记录一个关键点 这样每个长度为2∗len2*len2∗len的AA都恰好经过两个相邻关键点我们用这两个关键点计算贡献。 用后缀数组算出它们向前和向后的最长的相同长度 如果中间没有相交 那么是没有贡献的 如果有相交把相交这段标为蓝色\textcolor{blue}{蓝色}蓝色 我们发现A可以等于蓝色\textcolor{blue}{蓝色}蓝色绿色\textcolor{green}{绿色}绿色紫色\textcolor{purple}{紫色}紫色 挪到后面也可以等于绿色\textcolor{green}{绿色}绿色紫色\textcolor{purple}{紫色}紫色蓝色\textcolor{blue}{蓝色}蓝色 中间随便截一段也是合法的 用个差分即可 #include iostream #include cstdio #include cstring #include cctype #include algorithm #define MAXN 30005 using namespace std; typedef long long ll; int LOG[MAXN]; char s[MAXN]; int n; struct SuffixArray {int sa[MAXN],rk[MAXN],tp[MAXN];int c[MAXN],ht[MAXN];int st[MAXN][20];int m;void Rsort(){for (int i1;im;i) c[i]0;for (int i1;in;i) c[rk[i]];for (int i1;im;i) c[i]c[i-1];for (int in;i1;i--) sa[c[rk[tp[i]]]--]tp[i];}void build(){memset(rk,0,sizeof(rk));memset(sa,0,sizeof(sa));memset(tp,0,sizeof(tp));mz;for (int i1;in;i) rk[i]s[i],tp[i]i;Rsort();for (int w1,p0;pn;w1,mp){p0;for (int in-w1;in;i) tp[p]i;for (int i1;in;i) if (sa[i]w) tp[p]sa[i]-w;Rsort();swap(rk,tp);rk[sa[1]]p1;for (int i2;in;i)if (tp[sa[i]]tp[sa[i-1]]tp[sa[i]w]tp[sa[i-1]w]) rk[sa[i]]p;else rk[sa[i]]p;}int k1;for (int i1;in;i){if (k) --k;int jsa[rk[i]-1];while (s[ik]s[jk]) k;ht[rk[i]]k;}memset(st,0,sizeof(st));for (int i1;in;i) st[i][0]ht[i];for (int j1;j20;j)for (int i1;i(1(j-1))n;i)st[i][j]min(st[i][j-1],st[i(1(j-1))][j-1]);}inline int query_st(int l,int r){int tLOG[r-l1];return min(st[l][t],st[r-(1t)1][t]);}inline int query(int x,int y){if (rk[x]rk[y]) swap(x,y);return query_st(rk[x]1,rk[y]);} }A,B; #define lcp B.query #define lcs A.query int p[MAXN],q[MAXN]; int main() {LOG[0]-1;for (int i1;iMAXN;i) LOG[i]LOG[i1]1;int T;scanf(%d,T);while (T--){scanf(%s,s1);nstrlen(s1);A.build();reverse(s1,sn1);B.build(); for (int i1;in;i) p[i]q[i]0;for (int len1;lenn;len)for (int ilen;ilenn;ilen){int jilen;int amin(lcp(n-i1,n-j1),len),bmin(lcs(i,j),len);if (ablen) continue;int sab-len-1;p[i-a1];--p[i-as2];q[i-a2*len];--q[i-as2*len1]; }for (int i1;in;i) p[i]p[i-1],q[i]q[i-1];ll ans0;for (int i1;in;i) ans(ll)q[i]*p[i1];printf(%lld\n,ans);}return 0; }
http://www.huolong8.cn/news/188810/

相关文章:

  • 重庆免费微网站建设wordpress开源社区
  • 重庆企业网站建设软件著作权和专利的区别
  • 制作平台网站方案湖北省发布最新通告
  • 企业为什么要培训搜狗seo查询
  • 网络优化网站建设学习普通电脑怎么建设网站
  • 青海网站建设公司哪家好宁波静态网站建设
  • wap网站源码下载怎么搭建自己的网站平台
  • 建站平台哪个好公司建设一个网站需要多少钱
  • 深圳专业网站制作费用临沂做企业网站
  • 山西响应式网站建设哪家有新加坡设计公司排行
  • 网站评论管理怎么做的网页微信版下载
  • 网站空间租用哪家好厦门工程信息网
  • 网站开发合同样本怎么让百度蜘蛛围着网站爬取
  • 最好的域名注册网站免费推广渠道有哪些方式
  • 一个网站多台服务器上海网站设计建设
  • wordpress怎么修改字体颜色河北seo网站优化公司
  • 网站开发费用多少钱网站seo啥意思
  • 成都高端网站开发企业建设网站网站建设公司
  • 青岛网站建设与设计制作市场调研公司和咨询公司
  • 人和马做的视频网站企业代码
  • 网站建设与管理中专wordpress 开发插件
  • 合肥做网站需要多少钱高端网站定制商
  • 网站建设与网页制作论文seo推广培训费用
  • 企业门户网站建设的必要性品牌设计论文
  • 长沙建设银行招聘网站中国科协网站建设招标
  • 网站建设 小知识自己网站制作的详细教程
  • 做app还是网站苏州信网网站建设技术有限公司
  • 做爰网站视屏舒城县重点工程建设局网站
  • 北京企业网站建设电话网站目录怎么做301跳转
  • 全国设计网站公司威海人才招聘网官网