智能网站建设背景,网站建设公司利润率,php网站后台密码怎么修改,长沙网站技术专家题目大意#xff1a;给一个字符串#xff0c;求字符串的所有前缀的最小后缀#xff1b;
思路#xff1a;主要还是要理解Lyndon串的算法的整一个过程 参考#xff1a;搬运来自
#include iostream
#include cstdio
#include fstream
#include 给一个字符串求字符串的所有前缀的最小后缀
思路主要还是要理解Lyndon串的算法的整一个过程 参考搬运来自
#include iostream
#include cstdio
#include fstream
#include algorithm
#include cmath
#include deque
#include vector
#include queue
#include string
#include cstring
#include map
#include stack
#include set
#include cstdlib
#define INF 0x3f3f3f3f3f3f3f3f
#define inf 0x3f3f3f3f
#define FILL(a,b) (memset(a,b,sizeof(a)))
#define re register
#define lson rt1
#define rson rt1|1
#define lowbit(a) ((a)-(a))
#define ios std::ios::sync_with_stdio(false);std::cin.tie(0);std::cout.tie(0);
#define fi first
#define rep(i,n) for(int i0;(i)(n);i)
#define rep1(i,n) for(int i1;(i)(n);i)
#define se second
#define scd(a) scanf(%d,a)
#define scdd(a,b) scanf(%d%d,a,b)
#define scddd(a,b,c) scanf(%d%d%d,a,b,c)
#define ac coutans\n
#define F(x) ((x)/3((x)%31?0:tb))
#define G(x) ((x)tb?(x)*31:((x)-tb)*32)
#define pb push_back
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef pairll,ll pii;
int dx[4] {-1,1,0,0},dy[4] {0,0,1,-1};
const ll mod1e97;
const ll N 2e610;
const ll M 250000;
const double eps 1e-4;
//const double piacos(-1);
ll qk(ll a,ll b){ll ans1;while(b){if(b1) ans(ans*a)%mod;a(a*a)%mod;b/2;}return ans%mod;}
int n;
int d[N];
char s[N];
void sovle(){cin(s1);nstrlen(s1);int i1;d[1]1;ll ans0;while(in){int ji,ki1;while(kns[j]s[k]){if(s[j]s[k]) d[k]d[j](k-j),j;else {d[k]i;ji;}k;}d[k]k;while(ij) ik-j;}for(int in;i1;i--) ans(ans*1112%modd[i])%mod;coutansendl;
}
int main()
{
#ifdef LOCALfreopen(in.txt, r, stdin);
#elseiosint t1;cint;while(t--) sovle();
#endif // LOCALreturn 0;
}