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

贸易公司网站制作做心理咨询可以在哪些网站发贴

贸易公司网站制作,做心理咨询可以在哪些网站发贴,wordpress 数据库替换,写wordpress导航正题 题目链接:https://www.luogu.com.cn/problem/P5287 题目大意 开始一个空串#xff0c;nnn个操作 在末尾加入xxx个ccc字符#xff08;保证和ccc和前面的字符不同#xff09;返回到第xxx次操作之后 每次操作完成后求所有前缀的最长的borderborderborder长度和 1≤n≤…正题 题目链接:https://www.luogu.com.cn/problem/P5287 题目大意 开始一个空串nnn个操作 在末尾加入xxx个ccc字符保证和ccc和前面的字符不同返回到第xxx次操作之后 每次操作完成后求所有前缀的最长的borderborderborder长度和 1≤n≤1051\leq n\leq 10^51≤n≤105 解题思路 二操作好像是一个离线树能搞出来的先只考虑一操作因为是相当于求kmpkmpkmp之后的nextnextnext和所以可以考虑一下用kmpkmpkmp。 每个插入操作我们可以看做插入了一个二元组(c,x)(c,x)(c,x)nxtinxt_inxti​表示按照二元组完全匹配来KMP的nextnextnext数组。 然后求答案的时候设现在这个二元组(c,x)(c,x)(c,x)已经匹配到nownownow个ccc然后往前跳nxtnxtnxt的时候如果下一个二元组的字符是ccc且数量xnowxnowxnow那么我们就往后计算答案然后让nowxnowxnowx。 然后最后剩下的一些如果能和第一个匹配就全都匹配。 然后这样跑是能过的但是加了二操作之后就会TTT因为KMP是均摊复杂度的会被hackhackhack。 所以考虑一下怎么优化我们知道broderbroderbroder可以被划分成logloglog个等差数列而且一定是按照长度来排列的如果我们发现我们跳进了一个无法匹配的等差数列中我们就直接跳到这个等差数列结束的位置因为这个等差数列中已经不能匹配了。 这样复杂度就到了O(nlog⁡n)O(n\log n)O(nlogn)了 code #includecstdio #includecstring #includealgorithm #includecmath #includevector #define ll long long using namespace std; const ll N1e510,P998244353; ll n,len,ch[N][2],s[N][3],ans[N],nxt[N],prt[N],p[N]; vectorll e[N]; ll gs(ll l,ll r) {return (rl)*(r-l1)/2;} void dfs(ll x){ll inxt[len];s[len][0]ch[x][0];s[len][1]ch[x][1];s[len][2]s[len-1][2]ch[x][1];ans[len]ans[len-1];nxt[len]0;if(len1){ans[len]gs(1,ch[x][1]-1);}else{ll dlen-i;while(i(s[i1][0]!ch[x][0]||s[i1][1]!ch[x][1])){if(i-nxt[i]d)ii%dd;di-nxt[i];inxt[i];}nxt[len]i(i||(ch[x][0]s[1][0]ch[x][1]s[1][1]));ll now0;inxt[len-1],dlen-1-i;while(nowch[x][1]i){if(s[i1][0]ch[x][0]s[i1][1]now){ans[len]gs(s[i][2]now1,s[i][2]min(ch[x][1],s[i1][1]));nows[i1][1];}if(i-nxt[i]d)ii%dd;di-nxt[i];inxt[i];}if(nowch[x][1]s[1][0]ch[x][0]){if(s[i1][1]now)ans[len]gs(now1,min(ch[x][1],s[i1][1]));nowmax(now,min(ch[x][1],s[i1][1]));ans[len]s[1][1]*(ch[x][1]-now);}}prt[x]ans[len];for(ll i0;ie[x].size();i)dfs(e[x][i]);len--;return; } signed main() {scanf(%lld,n);for(ll i1;in;i){ll op;scanf(%lld ,op);if(op1){scanf(%lld %c,ch[i][1],ch[i][0]);e[p[i-1]].push_back(p[i]i);}else{ll x;scanf(%lld,x);p[i]p[x];}}for(ll i0;ie[0].size();i)dfs(e[0][i]);for(ll i1;in;i)printf(%lld\n,prt[p[i]]%P);return 0; }
http://www.yutouwan.com/news/267515/

相关文章:

  • 海北公司网站建设多少钱网架公司招聘安装队伍
  • wordpress 权限北京做网站优化的公司
  • 营销型品牌网站建设价格长沙网站排名优化报价
  • 网站建设架构 服务器门户网站开发需求
  • 有什么网站可以推广信息2345网址下载
  • 方案库网站wordpress添加数据库表
  • 怎样用html制作网站开发一款游戏能赚多少钱
  • 网站绑定公众号如何做装修网站
  • 网站建设或网站优化排名镜像网站是如何做的
  • 西宁市建设网站多少钱wordpress 默认上传路径
  • udacity 网站开发六安论坛
  • 安康企业网站定制网站建设前途
  • 网站长春网站建设做理财网站
  • 怎样做自己的公司网站个人网站涉及企业内容
  • 南宁网站建设哪家公司app拉新佣金排行榜
  • 建设银行网站安全性分析中国建设工程机械网站
  • 万网 网站建设方案书厦门网站建设哪家强
  • 网站建设都包括哪些wordpress托管服务
  • 网站建设需要什么书discuz注册
  • 寻找做网站的公司网站建设分金手指专业四
  • seo 网站换程序山东网站
  • 实惠网站建设电子商务网站设计的基本流程
  • 旧宫网站建设衡水网站建设一多软件
  • 一个网站上线需要什么搭建网站怎么挣钱
  • 下城区做网站app网站建站系统下载
  • 常州网站的建设制作网站学什么软件
  • 移动端网站开发多少钱用云做网站
  • 关于建设网站业务系统的请示网站建设的开发工具
  • 江西专业的网站建设制作中国电力建设股份有限公司网站
  • 建立校园网站青岛怎样做网站