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

产看网站权重wordpress点击文章跳转外站

产看网站权重,wordpress点击文章跳转外站,朔州网站建设价格低,网站后台管理默认密码正题 题目链接:http://noi.ac/problem/2144 题目大意 给出一个字符串sss和一个序列aaa。将字符串sss的所有本质不同子串降序排序后#xff0c;求有多少个区间[l,r][l,r][l,r]使得子串sl,rs_{l,r}sl,r​排名等于al∼ra_{l\sim r}al∼r​的和。 1≤n≤21051\leq n\leq 2\times…正题 题目链接:http://noi.ac/problem/2144 题目大意 给出一个字符串sss和一个序列aaa。将字符串sss的所有本质不同子串降序排序后求有多少个区间[l,r][l,r][l,r]使得子串sl,rs_{l,r}sl,r​排名等于al∼ra_{l\sim r}al∼r​的和。 1≤n≤2×1051\leq n\leq 2\times 10^51≤n≤2×105 解题思路 因为是降序排序所以每加一个字符排名是在下降的而aia_iai​的和又是不降的所以对于每个左端点最多只有一个右端点且可以考虑二分求出这个位置。 如何快速得到子串排名开始不会还去LA\text{LA}LA群问了一下才知道。 SAMSAMSAM的一个节点代表多个串不能通过节点来得到排名。后缀树上的一个节点也是代表多个串但是这些串的排名是连续的因为这些串都有相同的前缀。 所以我们可以根据后缀树上确定每个节点的最小排名然后用倍增找出子串sl,rs_{l,r}sl,r​的节点再根据长度确定具体排名。此时我们可以做到O(nlog⁡2n)O(n\log^2 n)O(nlog2n)可以通过本题了。 但还可以继续优化发现我们倍增的过程有大量重复越往上排名越后所以我们类似二分的判断方法直接用倍增跳到答案节点然后在答案节点处再二分就好了。 时间复杂度O(nlog⁡n)O(n\log n)O(nlogn) code #includecstdio #includecstring #includealgorithm #define ll long long using namespace std; const ll N4e510,T20; ll n,cnt,num,last,tot,len[N],fa[N],ch[N][26],pos[N],id[N]; ll w[N],dep[N],f[N][T1],t[N][26],rk[N],p1[N],p2[N]; char s[N]; void Insert(ll c){ll plast,nplastcnt;len[np]len[p]1;for(;p!ch[p][c];pfa[p])ch[p][c]np;if(!p)fa[np]1;else{ll qch[p][c];if(len[p]1len[q])fa[np]q;else{ll nqcnt;len[nq]len[p]1;pos[nq]pos[q];memcpy(ch[nq],ch[q],sizeof(ch[nq]));fa[nq]fa[q];fa[q]fa[np]nq;for(;pch[p][c]q;pfa[p])ch[p][c]nq;}}return; } void dfs(ll x){for(ll i25;i0;i--){ll yt[x][i];if(!y)continue;dep[y]dep[x]1;f[y][0]x;dfs(y);}rk[x]tot;totlen[x]-len[fa[x]];return; } signed main() {scanf(%s,s1);nstrlen(s1);for(ll i1;in;i)scanf(%lld,w[i]),w[i]w[i-1];lastcnt1;for(ll in;i1;i--)Insert(s[i]-a),pos[last]i,id[i]last;for(ll i2;icnt;i)t[fa[i]][s[pos[i]len[fa[i]]]-a]i;dfs(1);for(ll j1;jT;j)for(ll i1;icnt;i)f[i][j]f[f[i][j-1]][j-1];for(ll p1;pn;p){ll xid[p];for(ll iT;i0;i--){ll yf[x][i];if(y1)continue;if(rk[y]1w[plen[y]-1]-w[p-1])xy;}ll llen[fa[x]]1,rlen[x];while(lr){ll mid(lr)1;if(rk[x]len[x]-mid1w[pmid-1]-w[p-1])rmid-1;else lmid1;}if(rk[x]len[x]-l1w[pl-1]-w[p-1])num,p1[num]p,p2[num]pl-1;}printf(%lld\n,num);for(ll i1;inum;i)printf(%lld %lld\n,p1[i],p2[i]);return 0; }
http://www.zqtcl.cn/news/893804/

相关文章:

  • 网站关键词设置技巧wordpress 获得参数
  • 程序网站开发搜索引擎有哪些技巧
  • 网站模板上传教程响应式网站建设免费
  • 网站建设与设计ppt模板wordpress调用大全
  • wordpress信息修改佛山网站优化如何
  • 最权威的排行榜网站招网站开发人员
  • 北京通州住房和城乡建设部网站网站获取访客手机号源码
  • 网站开发与建设网站程序基础
  • 网站建设属于什么税php网站建设全程实例
  • 做网站语言排名2018淄博市沂源县建设局网站
  • 腾冲网站建设哪个电商平台最好
  • 重点实验室网站建设宁波seo优化服务
  • 怎么用手机做刷会员网站网页设计指什么
  • 小企业网站建设多少钱网页设计图片剧中
  • 新乐做网站优化如何做二级域名子目录网站
  • 如何在网站上做推广中国在数码网站注册域名好 gt
  • 电子商务电商网站饿建设管理网站建设
  • php网站出现乱码网站建设项目总结
  • 网站建设公司墨子网络用我在线网站建设
  • 长寿网站建设公司服装设计有哪些网站
  • 苍溪规划和建设局网站网页设计制作报告
  • html5网站 源码360浏览器个别网页打不开怎么解决
  • 找个小网站建设网站优点
  • 台州网站建设优化网站建设加微信
  • 公司网站建设费会计分录义乌商城集团的网站建设
  • 彩票网站建设基本流程网站文章页做百度小程序
  • 在淘宝上做代销哪个网站好推广普通话喜迎二十大的手抄报怎么画
  • 知名网站建设开发受欢迎的唐山网站建设
  • 普洱网站搭建创建论坛网站需要多少钱
  • 自己做的网站如何在网络上展示wordpress 手动采集