QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#269873 | #7773. 重排 | zhouhuanyi | 30 | 73ms | 27216kb | C++23 | 1.3kb | 2023-11-30 09:10:34 | 2023-11-30 09:10:35 |
Judging History
answer
#include<iostream>
#include<cstdio>
#include<algorithm>
#define N 1000000
#define mod1 998244353
#define mod2 998244853
#define Base1 131
#define Base2 171
using namespace std;
int read()
{
char c=0;
int sum=0;
while (c<'0'||c>'9') c=getchar();
while ('0'<=c&&c<='9') sum=sum*10+c-'0',c=getchar();
return sum;
}
int MD1(int x)
{
return x>=mod1?x-mod1:x;
}
int MD2(int x)
{
return x>=mod2?x-mod2:x;
}
struct reads
{
int l,r,hsh1,hsh2;
bool operator == (const reads &t)const
{
return hsh1==t.hsh1&&hsh2==t.hsh2;
}
};
int n,top,l=1,r,nt[N+1];
string s;
reads stk[N+1],dque[N+1];
reads operator + (reads a,reads b)
{
nt[a.r]=b.l;
return (reads){a.l,b.r,MD1(1ll*a.hsh1*Base1%mod1+b.hsh1),MD2(1ll*a.hsh2*Base2%mod2+b.hsh2)};
}
int main()
{
int d,x;
cin>>s,n=s.length(),sort(s.begin(),s.end());
for (int i=n;i>=1;--i)
{
if (s[i-1]==s[0]) stk[++top]=(reads){i,i,s[i-1],s[i-1]};
else dque[++r]=(reads){i,i,s[i-1],s[i-1]};
}
while (l<=r)
{
d=min(top,r-l+1);
for (int i=1;i<=d;++i) stk[i]=stk[i]+dque[l++];
d=top,reverse(stk+1,stk+d+1);
for (int i=1;i<=d;++i)
{
if (stk[1]==stk[i]) top=i;
else dque[++r]=stk[i];
}
}
for (int i=2;i<=top;++i) stk[1]=stk[1]+stk[i];
x=stk[1].l;
for (int i=1;i<=n;++i) printf("%c",s[x-1]),x=nt[x];
puts("");
return 0;
}
详细
Subtask #1:
score: 10
Accepted
Test #1:
score: 10
Accepted
time: 1ms
memory: 7728kb
input:
mmmmmmmmm
output:
mmmmmmmmm
result:
ok single line: 'mmmmmmmmm'
Test #2:
score: 0
Accepted
time: 0ms
memory: 7716kb
input:
qqymfqgj
output:
fyqqqmjg
result:
ok single line: 'fyqqqmjg'
Test #3:
score: 0
Accepted
time: 1ms
memory: 7764kb
input:
wtzyztttz
output:
tywtztztz
result:
ok single line: 'tywtztztz'
Test #4:
score: 0
Accepted
time: 1ms
memory: 7732kb
input:
bcbccccbcc
output:
bccbccbccc
result:
ok single line: 'bccbccbccc'
Test #5:
score: 0
Accepted
time: 1ms
memory: 7796kb
input:
hojqbzgfb
output:
bqojhgfbz
result:
ok single line: 'bqojhgfbz'
Test #6:
score: 0
Accepted
time: 1ms
memory: 7832kb
input:
rjyrbjqlz
output:
bzyrrqljj
result:
ok single line: 'bzyrrqljj'
Test #7:
score: 0
Accepted
time: 0ms
memory: 7768kb
input:
oiyholvco
output:
cyvooolih
result:
ok single line: 'cyvooolih'
Test #8:
score: 0
Accepted
time: 1ms
memory: 7700kb
input:
ubbnfttog
output:
bttongfbu
result:
ok single line: 'bttongfbu'
Test #9:
score: 0
Accepted
time: 1ms
memory: 7724kb
input:
hhuhttttj
output:
htthuhttj
result:
ok single line: 'htthuhttj'
Test #10:
score: 0
Accepted
time: 1ms
memory: 7768kb
input:
rnurrrrkrr
output:
kurrrrrrrn
result:
ok single line: 'kurrrrrrrn'
Test #11:
score: 0
Accepted
time: 1ms
memory: 7828kb
input:
wwwwrrwwrr
output:
rwrwwrwrww
result:
ok single line: 'rwrwwrwrww'
Test #12:
score: 0
Accepted
time: 1ms
memory: 7828kb
input:
tppvcjlls
output:
cvtsppllj
result:
ok single line: 'cvtsppllj'
Test #13:
score: 0
Accepted
time: 0ms
memory: 7920kb
input:
fyrrwriyxr
output:
fyyxwrrrri
result:
ok single line: 'fyyxwrrrri'
Test #14:
score: 0
Accepted
time: 1ms
memory: 7832kb
input:
ouulnlasnu
output:
auuusonnll
result:
ok single line: 'auuusonnll'
Test #15:
score: 0
Accepted
time: 1ms
memory: 7712kb
input:
aasapssss
output:
aspassass
result:
ok single line: 'aspassass'
Subtask #2:
score: 20
Accepted
Test #16:
score: 20
Accepted
time: 0ms
memory: 7800kb
input:
bbbbbbbcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
output:
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbc
result:
ok single line: 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbc'
Test #17:
score: 0
Accepted
time: 1ms
memory: 7828kb
input:
aaaaaaaabcaabacacaaaacaaabaaaabaabaaaaac
output:
aaabaaacaaabaaacaaabaaacaaabaaacaaabaaac
result:
ok single line: 'aaabaaacaaabaaacaaabaaacaaabaaacaaabaaac'
Test #18:
score: 0
Accepted
time: 1ms
memory: 7780kb
input:
abbcbbbabbacbbbbabcbbbabbbcbabbbababbaabbbb
output:
abbbbacacacacabbbbbabbbbbabbbbbabbbbbabbbbb
result:
ok single line: 'abbbbacacacacabbbbbabbbbbabbbbbabbbbbabbbbb'
Test #19:
score: 0
Accepted
time: 1ms
memory: 7772kb
input:
baaaabaaaaabaaaaaaaaabaaaaaaaaabaaabbaaaaaaaaabaa
output:
aaaaaabaaaaabaaaaabaaaaabaaaaabaaaaabaaaaabaaaaab
result:
ok single line: 'aaaaaabaaaaabaaaaabaaaaabaaaaabaaaaabaaaaabaaaaab'
Test #20:
score: 0
Accepted
time: 1ms
memory: 7796kb
input:
aaabbaaaaaaabbaaaaaaabaaaaaaabaaaaaaaabbbaaaaaa
output:
aaaaabaaaabaaaabaaaabaaaaabaaaabaaaabaaaabaaaab
result:
ok single line: 'aaaaabaaaabaaaabaaaabaaaaabaaaabaaaabaaaabaaaab'
Test #21:
score: 0
Accepted
time: 1ms
memory: 7768kb
input:
bcccbcaababccbcbbccbacbbcabcbbbbacbccaabccaccb
output:
accbbaccbbaccbbbaccbbaccbbaccbbbaccbbaccbbaccc
result:
ok single line: 'accbbaccbbaccbbbaccbbaccbbaccbbbaccbbaccbbaccc'
Test #22:
score: 0
Accepted
time: 1ms
memory: 7832kb
input:
caaaacacacaaacacccaaacacaacaaccbcacbaaccccbcaaac
output:
abacacacacacacacabacacacacacacacabacacacacacacac
result:
ok single line: 'abacacacacacacacabacacacacacacacabacacacacacacac'
Test #23:
score: 0
Accepted
time: 1ms
memory: 7828kb
input:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
output:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
result:
ok single line: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
Test #24:
score: 0
Accepted
time: 1ms
memory: 7776kb
input:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
output:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
result:
ok single line: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
Test #25:
score: 0
Accepted
time: 0ms
memory: 7776kb
input:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
output:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
result:
ok single line: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
Test #26:
score: 0
Accepted
time: 0ms
memory: 7856kb
input:
bbcccccbbbbccacbbccbbbcbcccccccccccbbcbcbbcc
output:
accccccccccccccccccccccccccbbbbbbbbbbbbbbbbb
result:
ok single line: 'accccccccccccccccccccccccccbbbbbbbbbbbbbbbbb'
Test #27:
score: 0
Accepted
time: 0ms
memory: 7780kb
input:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
output:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
result:
ok single line: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
Test #28:
score: 0
Accepted
time: 1ms
memory: 7784kb
input:
aaabaabaabaabbabbbbbbbbaaabaaabbbbababbaa
output:
ababababababababababababababababababababb
result:
ok single line: 'ababababababababababababababababababababb'
Test #29:
score: 0
Accepted
time: 1ms
memory: 7780kb
input:
baaaabaaaababbbaaabaaaabbabaaabababbbbbbabaab
output:
aababababaababababaababababaababababaabababab
result:
ok single line: 'aababababaababababaababababaababababaabababab'
Test #30:
score: 0
Accepted
time: 1ms
memory: 7860kb
input:
ccaacccbbcccbbacbabaccaacccccacbacbbabcacac
output:
acbbbaccaccaccaccacbbbbacbbbaccaccaccaccacc
result:
ok single line: 'acbbbaccaccaccaccacbbbbacbbbaccaccaccaccacc'
Subtask #3:
score: 0
Wrong Answer
Test #31:
score: 0
Wrong Answer
time: 1ms
memory: 7844kb
input:
elppjxhjnqephxnnleeepqllpeellqpleexepxlqnpelnlpgplxejlpllppleppnllhjhppgneleghexegqpxpqlqhpnenhlgjjepelllpexplqeppexpqeghpplnpxegeeehqgnhxeqllplphlxpppqnhqephlqnxenlehpeplnqenheejhxqxleeljepehlngepgpxpllppeeheelpplpexpqgheelllplpqnllexlphepghllxnnepqjpqepjeheqqghhejhlnlnlqleeplepxhnlqlnppjpeelqeelxg...
output:
eppppnllllllllllllljjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhgggggggggggggggggggggggggggggggggggggggggggggggggggggggggggeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqe...
result:
wrong answer 1st lines differ - expected: 'eppppnllllllllllllljjjjjjjjjjj...llllllllllleppppnllllllllllllll', found: 'eppppnllllllllllllljjjjjjjjjjj...llllllllllleppppnllllllllllllll'
Subtask #4:
score: 0
Wrong Answer
Test #46:
score: 40
Accepted
time: 73ms
memory: 27216kb
input:
ksetiktesataqqwcetteiqcqtwakaiaaaqciceaticteectqqtcaectqtsticctqeqeeiieecaqtctctqqeqitqtttccccctikacktaaqteictwstcitttectaitttiqeqasskkqaateeaatqaetttccesqitiecatgqqaqitwqtaqqcqittittiswcweaiqicqiecwtccakaattgtickccqkqckaaewkekccggtiiqqsttcqactiqeaeqtiigeekettaieekectqqckqqteiceacwecktaiteaceaqkqeic...
output:
atsqqqkiiiiiiiiiggggeeeeeeeeeeeeeecccccccccccccccccccccccccccawawawawawawawawawawawawattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattattat...
result:
ok single line: 'atsqqqkiiiiiiiiiggggeeeeeeeeee...eeecccccccccccccccccccccccccccc'
Test #47:
score: -40
Wrong Answer
time: 52ms
memory: 24924kb
input:
btojojooojottoonoonjjojjwoooonoonjowtjotjotooojjootjjjobjtnoojootojojojbtnojonooojnjtonotootjnotbttojotntoojjqjoojjnooojjjjwojtooojonjotoooojtotjooooooojjoontjnooootjoojjojojtooojoojjojojoooobojjjonjjtoojjjottjojooottootooojoojjotottooooootooobtjoototojjjwnonnjotooojjjotwjoooooootojoootojtotjtjootno...
output:
awwwwwwwwttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq...
result:
wrong answer 1st lines differ - expected: 'awwwwwwwwttttttttttttttttttttt...nnnnnnnnnnnnnnnnnnnnnnnnnmmmmmm', found: 'awwwwwwwwttttttttttttttttttttt...nnnnnnnnnnnnnnnnnnnnnnnnnmmmmmm'