提交记录 17645
| 提交时间 |
评测时间 |
| 2022-04-13 10:43:54 |
2022-04-13 10:44:00 |
#include<bits/stdc++.h>
using namespace std;
const int N=2e6+5;
char S[N];
int n,m,num,x[N],y[N],sa[N],tax[N],h[N],rk[N];
void suffix_sort() {
m=257;
for(int i=1;i<=n;++i)++tax[x[i]=S[i]];
for(int i=1;i<=m;++i)tax[i]+=tax[i-1];
for(int i=n;i>=1;--i)sa[tax[x[i]]--]=i;
for(int k=1;k<n;k<<=1) {
num=0;
for(int i=n-k+1;i<=n;++i)y[++num]=i;
for(int i=1;i<=n;++i)if(sa[i]>k)y[++num]=sa[i]-k;
for(int i=1;i<=m;++i)tax[i]=0;
for(int i=1;i<=n;++i)++tax[x[i]];
for(int i=1;i<=m;++i)tax[i]+=tax[i-1];
for(int i=n;i>=1;--i)sa[tax[x[y[i]]]--]=y[i];
swap(x,y);x[sa[1]]=num=1;
for(int i=2;i<=n;++i)
x[sa[i]]=(y[sa[i]]==y[sa[i-1]]&&y[sa[i]+k]==y[sa[i-1]+k])?num:++num;
if(num==n)break;
m=num;
}
for(int i=1;i<=n;++i)rk[sa[i]]=i;
for(int i=1,j;i<=n;++i) {
j=h[rk[i-1]]-1;
if(j<0)j=0;
while(S[i+j]==S[sa[rk[i]-1]+j])++j;
h[rk[i]]=j;
}
}
int main() {
scanf("%s",S+1);
n=strlen(S+1);
suffix_sort();
for(int i=1;i<=n;++i)printf("%d ",sa[i]);
if(n>1) {
puts("");
for(int i=2;i<=n;++i)printf("%d ",h[i]);
}
return 0;
}
| Compilation | N/A | N/A | Compile OK | Score: N/A | 显示更多 |
| Subtask #1 Testcase #1 | 37.63 us | 60 KB | Wrong Answer | Score: -100 | 显示更多 |
| Subtask #1 Testcase #2 | 3.094 ms | 15 MB + 324 KB | Accepted | Score: 100 | 显示更多 |
| Subtask #1 Testcase #3 | 3.094 ms | 15 MB + 324 KB | Accepted | Score: 0 | 显示更多 |
| Subtask #1 Testcase #4 | 5.926 ms | 15 MB + 324 KB | Accepted | Score: 0 | 显示更多 |
| Subtask #1 Testcase #5 | 5.923 ms | 15 MB + 324 KB | Accepted | Score: 0 | 显示更多 |
| Subtask #1 Testcase #6 | 5.923 ms | 15 MB + 324 KB | Accepted | Score: 0 | 显示更多 |
| Subtask #1 Testcase #7 | 35.829 ms | 17 MB + 664 KB | Accepted | Score: 0 | 显示更多 |
| Subtask #1 Testcase #8 | 70.367 ms | 17 MB + 884 KB | Accepted | Score: 0 | 显示更多 |
| Subtask #1 Testcase #9 | 40.749 ms | 17 MB + 756 KB | Accepted | Score: 0 | 显示更多 |
| Subtask #1 Testcase #10 | 29.536 ms | 16 MB + 912 KB | Accepted | Score: 0 | 显示更多 |
| Subtask #1 Testcase #11 | 31.638 ms | 16 MB + 952 KB | Accepted | Score: 0 | 显示更多 |
| Subtask #1 Testcase #12 | 62.987 ms | 17 MB + 948 KB | Accepted | Score: 0 | 显示更多 |
| Subtask #1 Testcase #13 | 58.894 ms | 17 MB + 968 KB | Accepted | Score: 0 | 显示更多 |
| Subtask #1 Testcase #14 | 44.883 ms | 17 MB + 780 KB | Accepted | Score: 0 | 显示更多 |
| Subtask #1 Testcase #15 | 44.489 ms | 17 MB + 784 KB | Accepted | Score: 0 | 显示更多 |
| Subtask #1 Testcase #16 | 61.73 ms | 17 MB + 948 KB | Accepted | Score: 0 | 显示更多 |
| Subtask #1 Testcase #17 | 61.409 ms | 17 MB + 948 KB | Accepted | Score: 0 | 显示更多 |
| Subtask #1 Testcase #18 | 61.667 ms | 17 MB + 948 KB | Accepted | Score: 0 | 显示更多 |
Judge Duck Online | 评测鸭在线
Server Time: 2026-03-17 05:20:12 | Loaded in 1 ms | Server Status
个人娱乐项目,仅供学习交流使用 | 捐赠