当前位置: 代码迷 >> 综合 >> 7月21集训总结 manacher hash 并查集
  详细解决方案

7月21集训总结 manacher hash 并查集

热度:80   发布时间:2024-01-30 20:39:44.0

马拉车算法:

void getstr(int l,int r)
{str.clear();str.push_back('$');for(int i=l;i<r;i++)    {        str.push_back('#');        str.push_back(s[i]);    }    str.push_back('#');    
}
void manacher()
{        int mx=0,id;        for(int i=1;i<s.size();i++)        {                if(mx>i) p[i]=min(p[2*id-i],mx-i);                			   						else p[i]=1;                    while(str[i+p[i]]==str[i-p[i]])p[i]++;                        		                 if(p[i]+i>mx)mx=p[i]+i,id=i;                        		       	}
}

其余之后补上