提交记录 12024


用户 题目 状态 得分 用时 内存 语言 代码长度
panyf 1006. 【模板题】后缀排序 Wrong Answer 0 45.765 ms 3128 KB C++11 853 B
提交时间 评测时间
2020-03-08 18:52:52 2020-08-01 02:50:20
#include<bits/stdc++.h>
const int N=1e5+5;
char s[N];
int sa[N],h[N],u[N],v[N],c[N];
int main(){
	int i,j,k=0,n,m=131,*rk=u,*tp=v,*z;
	gets(s+1),n=strlen(s+1);
	for(i=1;i<=n;++i)++c[rk[i]=s[i]];
	for(i=2;i<=m;++i)c[i]+=c[i-1];
	for(i=n;i;--i)sa[c[rk[i]]--]=i;
	for(i=1;i<=n&&k<n;m=k,i<<=1){
		for(j=n-i+1,k=0;j<=n;++j)tp[++k]=j;
		for(j=1;j<=n;++j)if(sa[j]>i)tp[++k]=sa[j]-i;
		memset(c+1,0,sizeof(int[m]));
		for(j=1;j<=n;++j)++c[rk[j]];
		for(j=2;j<=m;++j)c[j]+=c[j-1];
		for(j=n;j;--j)sa[c[rk[tp[j]]]--]=tp[j];
		z=rk,rk=tp,tp=z,rk[sa[1]]=k=1;
		for(j=2;j<=n;++j)rk[sa[j]]=tp[sa[j]]==tp[sa[j-1]]&&tp[sa[j]+i]==tp[sa[j-1]+i]?k:++k;
	}
	for(i=1;i<=n;++i)printf("%d ",sa[i]);
	for(i=1,k=0;i<=n;++i){
		if(rk[i]==1)continue;
		if(k)--k;
		for(j=sa[rk[i]-1];s[i+k]==s[j+k];++k);
		h[rk[i]]=k;
	}
	for(puts(""),i=2;i<=n;++i)printf("%d ",h[i]);
	return 0;
}

CompilationN/AN/ACompile OKScore: N/A

Subtask #1 Testcase #134.43 us56 KBWrong AnswerScore: -100

Subtask #1 Testcase #236.12 us60 KBAcceptedScore: 100

Subtask #1 Testcase #334.93 us60 KBAcceptedScore: 0

Subtask #1 Testcase #440.61 us64 KBAcceptedScore: 0

Subtask #1 Testcase #539.78 us60 KBAcceptedScore: 0

Subtask #1 Testcase #640.51 us64 KBAcceptedScore: 0

Subtask #1 Testcase #730.049 ms2 MB + 776 KBAcceptedScore: 0

Subtask #1 Testcase #845.765 ms2 MB + 996 KBAcceptedScore: 0

Subtask #1 Testcase #932.155 ms2 MB + 860 KBAcceptedScore: 0

Subtask #1 Testcase #1020.933 ms1 MB + 904 KBAcceptedScore: 0

Subtask #1 Testcase #1121.581 ms1 MB + 944 KBAcceptedScore: 0

Subtask #1 Testcase #1237.525 ms3 MB + 36 KBAcceptedScore: 0

Subtask #1 Testcase #1336.332 ms3 MB + 56 KBAcceptedScore: 0

Subtask #1 Testcase #1433.398 ms2 MB + 888 KBAcceptedScore: 0

Subtask #1 Testcase #1532.963 ms2 MB + 896 KBAcceptedScore: 0

Subtask #1 Testcase #1636.357 ms3 MB + 36 KBAcceptedScore: 0

Subtask #1 Testcase #1735.82 ms3 MB + 36 KBAcceptedScore: 0

Subtask #1 Testcase #1836.034 ms3 MB + 36 KBAcceptedScore: 0


Judge Duck Online | 评测鸭在线
Server Time: 2026-03-26 18:45:46 | Loaded in 1 ms | Server Status
个人娱乐项目,仅供学习交流使用 | 捐赠