QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#96907 | #4806. Suffix Sort | jthis | TL | 2619ms | 87020kb | C++20 | 3.1kb | 2023-04-15 18:07:45 | 2023-04-15 18:07:48 |
Judging History
answer
#include <iostream>
#include <chrono>
#include <random>
#include <algorithm>
#include <deque>
#include <cstring>
#include <array>
#include <set>
#pragma GCC optimize("O3")
#pragma GCC optimize("Ofast")
#pragma GCC optimization("unroll-loops")
#pragma GCC target("avx,avx2")
#define all(x)x.begin(),x.end()
#define pack(x)sort(all(x));x.erase(unique(all(x)),x.end())
#define gi(x,v)lower_bound(all(x),v)-x.begin()
using namespace std;
using ll=long long;
struct hash_string{
int v[200'010];
int pw[200'010];
int p1=3423557;
void init(string s,char k){
pw[0]=1;
for(int i=1;i<=s.length();i++){
pw[i]=pw[i-1]*p1;
v[i]=v[i-1]*p1+(s[i-1]==k?5471:0);
}
}int get(int l,int r){
l++;r++;
return v[r]-v[l-1]*pw[r-l+1];
}
}tree[26];
int N;
vector<int> v;
int ord[200'010][26];
int num[200'010][26];
string str;
bool cmp(const int a,const int b){
int l=1,r=N-max(a,b)+1;
while(l<=r){
int mid=l+r>>1;
bool isSame=true;
for(int i=0;i<26;i++){
if(tree[ord[a][i]].get(a,a+mid-1)!=tree[ord[b][i]].get(b,b+mid-1)){
isSame=false;
break;
}
}if(isSame)l=mid+1;
else r=mid-1;
}int same=l-1;
if(same==N-max(a,b)+1)return a>b;
return num[a][str[a+same]-'a']<num[b][str[b+same]-'a'];
}
void dnc(int s,int e){
if(s>=e)return;
int mid=s+e>>1;
dnc(s,mid);dnc(mid+1,e);
vector<int> ret;
int pv=s,ppv=mid+1;
while(pv!=mid+1&&ppv!=e+1){
if(cmp(v[pv],v[ppv]))ret.push_back(v[pv++]);
else ret.push_back(v[ppv++]);
}
while(pv!=mid+1)ret.push_back(v[pv++]);
while(ppv!=e+1)ret.push_back(v[ppv++]);
for(int i=s;i<=e;i++)v[i]=ret[i-s];
}
signed main(){
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
int n;
cin>>n;N=n-1;
cin>>str;
if(n!=str.length())return 1;
vector<pair<int,int>>sd;
for(int i=0;i<26;i++){
tree[i].init(str,i+'a');
sd.push_back({n+1,i});
}
for(int i=(int)str.length()-1;i>=0;i--){
sd[str[i]-'a'].first=i;
vector<pair<int,int>> dup=sd;
sort(all(dup));
for(int j=0;j<26;j++){
ord[i][j]=dup[j].second;
num[i][dup[j].second]=j;
}
}
vector<int> v2,v3,v4;
for(int i=0;i+2<str.length();i++){
if(str[i]==str[i+1]){
if(str[i]==str[i+2])v.push_back(i);
else v2.push_back(i);
}
else {
if(str[i]==str[i+2])v3.push_back(i);
else v4.push_back(i);
}
}
cout<<str.length()<<' ';
if(str[n-2]==str[n-1])cout<<(int)str.length()-1<<' ';
dnc(0,(int)v.size()-1);
for(auto i:v)cout<<i+1<<' ';
swap(v,v2);
dnc(0,(int)v.size()-1);
for(auto i:v)cout<<i+1<<' ';
if(str[n-2]!=str[n-1])cout<<(int)str.length()-1<<' ';
swap(v,v3);
dnc(0,(int)v.size()-1);
for(auto i:v)cout<<i+1<<' ';
swap(v,v4);
dnc(0,(int)v.size()-1);
for(auto i:v)cout<<i+1<<' ';
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 3ms
memory: 46284kb
input:
6 aadead
output:
6 1 5 4 3 2
result:
ok single line: '6 1 5 4 3 2 '
Test #2:
score: 0
Accepted
time: 2199ms
memory: 86140kb
input:
200000 baabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaaba...
output:
200000 199998 199995 199992 199989 199986 199983 199980 199977 199974 199971 199968 199965 199962 199959 199956 199953 199950 199947 199944 199941 199938 199935 199932 199929 199926 199923 199920 199917 199914 199911 199908 199905 199902 199899 199896 199893 199890 199887 199884 199881 199878 199875...
result:
ok single line: '200000 199998 199995 199992 19...99991 99994 99997 100000 99999 '
Test #3:
score: 0
Accepted
time: 2414ms
memory: 86908kb
input:
200000 ceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabceddabcedda...
output:
200000 199999 99999 199993 199987 199981 199975 199969 199963 199957 199951 199945 199939 199933 199927 199921 199915 199909 199903 199897 199891 199885 199879 199873 199867 199861 199855 199849 199843 199837 199831 199825 199819 199813 199807 199801 199795 199789 199783 199777 199771 199765 199759 ...
result:
ok single line: '200000 199999 99999 199993 199... 99971 99977 99983 99989 99995 '
Test #4:
score: 0
Accepted
time: 2534ms
memory: 86272kb
input:
200000 ccbdbdddababcacbbcdcaacccadacacccdabbabaddcccacdbcbbbbdbadccaadabbabbdacccbbbdbdababcbdadddccacaacdbabbaccdaaaccadbabcdccadacdacbabcdbccbcaabdadddddabdcbdcacadcdadcccbacbacabbbbbbbcadbcabdcddddbdccaccccbdbdddababcacbbcdcaacccadacacccdabbabaddcccacdbcbbbbdbadccaadabbabbdacccbbbdbdababcbdadddcc...
output:
200000 199999 199974 199774 199574 199374 199174 198974 198774 198574 198374 198174 197974 197774 197574 197374 197174 196974 196774 196574 196374 196174 195974 195774 195574 195374 195174 194974 194774 194574 194374 194174 193974 193774 193574 193374 193174 192974 192774 192574 192374 192174 191974...
result:
ok single line: '200000 199999 199974 199774 19... 99069 99269 99469 99669 99869 '
Test #5:
score: 0
Accepted
time: 2209ms
memory: 85924kb
input:
200000 abbaababbabbaaabbbabaabbbbaaaababbbaabaaaaabbbbaababaabaabaabbaababbbaaaababbbabbbababaaaabaabaaabaaaabbaaababbbaabbbaabbaabbbbaaaabababbabbbaabbaabbaaabbbabbbabbabaabbaaabbbbaaaabababaabbabaababaabababbaaaabbbaaaaabbbabbaaabbaaaaaabbababbaaabbaababaaabbaabaaabaabababaababaaababbbabaabaababab...
output:
200000 199999 195513 185513 175513 165513 155513 145513 135513 125513 115513 105513 5513 15513 25513 35513 45513 55513 65513 75513 85513 95513 195514 185514 175514 165514 155514 145514 135514 125514 115514 105514 5514 15514 25514 35514 45514 55514 65514 75514 85514 95514 195515 185515 175515 165515 ...
result:
ok single line: '200000 199999 195513 185513 17...75512 85512 95512 99998 100000 '
Test #6:
score: 0
Accepted
time: 1914ms
memory: 86988kb
input:
200000 hcggbheidbabbjieidfiaejiihijagaigagfgecgijdjhicegcdfcdibeajchhdhahbjbegeagcadgihjcjbhecighdgdchiigccijdedddahhgbdecbjhfgfacffcjejdefhfgegchedcdgddajjibhhgfbjhecaidgchjibcaiibcebdbaccaebeebhifaiegjjhddbfgcceeehaccbceigihhaihebadigggijhajifcgicgaajdiacghhcdjcegijdcheaihhcbbigbhgjhjbbhjiedcbfiia...
output:
200000 194057 144057 44057 94057 177659 127659 27659 77659 194058 144058 44058 94058 178029 128029 28029 78029 173245 123245 23245 73245 180965 130965 30965 80965 169191 119191 19191 69191 193384 143384 43384 93384 155279 105279 5279 55279 166917 116917 16917 66917 173325 123325 23325 73325 180229 1...
result:
ok single line: '200000 194057 144057 44057 940...1236 180898 130898 30898 80898 '
Test #7:
score: 0
Accepted
time: 2097ms
memory: 86844kb
input:
200000 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb...
output:
200000 199999 199998 199997 199996 199995 199994 199993 199992 199991 199990 199989 199988 199987 199986 199985 199984 199983 199982 199981 199980 199979 199978 199977 199976 199975 199974 199973 199972 199971 199970 199969 199968 199967 199966 199965 199964 199963 199962 199961 199960 199959 199958...
result:
ok single line: '200000 199999 199998 199997 19...99996 99997 99998 99999 100000 '
Test #8:
score: 0
Accepted
time: 2564ms
memory: 86336kb
input:
200000 bdcabacccabbbdbddcdabdcabacccabbbdbddcdabdcabacccabbbdbddcdabdcabacccabbbdbddcdabdcabacccabbbdbddcdabdcabacccabbbdbddcdabdcabacccabbbdbddcdabdcabacccabbbdbddcdabdcabacccabbbdbddcdabdcabacccabbbdbddcdabdcabacccabbbdbddcdabdcabacccabbbdbddcdabdcabacccabbbdbddcdabdcabacccabbbdbddcdabdcabacccabbb...
output:
200000 199991 199971 199951 199931 199911 199891 199871 199851 199831 199811 199791 199771 199751 199731 199711 199691 199671 199651 199631 199611 199591 199571 199551 199531 199511 199491 199471 199451 199431 199411 199391 199371 199351 199331 199311 199291 199271 199251 199231 199211 199191 199171...
result:
ok single line: '200000 199991 199971 199951 19...99962 99982 100000 99999 99998 '
Test #9:
score: 0
Accepted
time: 2587ms
memory: 86324kb
input:
200000 acbcadccdacdaacbccbdaaddadadaabdcbcbdadccbbbaddbdaccbabcabababddaccddcabaaadbdaacaaddabacaadbabdcadaccbdcabacbcbaddbbdbacaabccdbbdbaddaddbcbbcadddbbcacccbccaddbddabcdabdbadbdddabbdcaacdbcccdbdbcaddbbdacbcadccdacdaacbccbdaaddadadaabdcbcbdadccbbbaddbdaccbabcabababddaccddcabaaadbdaacaaddabacaadb...
output:
200000 199951 199751 199551 199351 199151 198951 198751 198551 198351 198151 197951 197751 197551 197351 197151 196951 196751 196551 196351 196151 195951 195751 195551 195351 195151 194951 194751 194551 194351 194151 193951 193751 193551 193351 193151 192951 192751 192551 192351 192151 191951 191751...
result:
ok single line: '200000 199951 199751 199551 19... 99341 99541 99741 99941 99999 '
Test #10:
score: 0
Accepted
time: 2619ms
memory: 86376kb
input:
200000 caaacaccdabccbdcabaccddaabbdbdbabcdbbbbabadbabcddaaacddacdaaacbbabbdaccddbdadccabbaaabdcaaddccbcdcbdcabbdccbaccbabdbcddccaadbaabdbabccbbcbabbbcbbcbbcddaaabddbbaddbcacdccbaccbadddcababdacdddcbcbccddaaacaaacaccdabccbdcabaccddaabbdbdbabcdbbbbabadbabcddaaacddacdaaacbbabbdaccddbdadccabbaaabdcaaddc...
output:
200000 199999 199998 199836 199636 199436 199236 199036 198836 198636 198436 198236 198036 197836 197636 197436 197236 197036 196836 196636 196436 196236 196036 195836 195636 195436 195236 195036 194836 194636 194436 194236 194036 193836 193636 193436 193236 193036 192836 192636 192436 192236 192036...
result:
ok single line: '200000 199999 199998 199836 19... 99173 99373 99573 99773 99973 '
Test #11:
score: 0
Accepted
time: 2559ms
memory: 86284kb
input:
200000 bcababccacccdbbcaacdcdddddccddcadababbddcdddbadcbcbadbabddabcabadccccbadcbaddacbaccbbcdadabbcaaadbdbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcababccacccdbbcaacdcdddddccddcadababbddcdddbadcbcbadbabddabcabadccccbadcbaddacbaccbbcdadabbc...
output:
200000 199999 199998 199997 199996 199995 199994 199993 199992 199991 199990 199989 199988 199987 199986 199985 199984 199983 199982 199981 199980 199979 199978 199977 199976 199975 199974 199973 199972 199971 199970 199969 199968 199967 199966 199965 199964 199963 199962 199961 199960 199959 199958...
result:
ok single line: '200000 199999 199998 199997 19... 99063 99263 99463 99663 99863 '
Test #12:
score: 0
Accepted
time: 1802ms
memory: 85888kb
input:
200000 aaaaaabbaaaaaabbbbbababaaabbabaabbbbaabaabaabbbbbbbbaaabaaabbbaaababaaaaaababaabbbbbbbbbababbbbabaabbaabaaabaaabaabbabbabababababaaaaabbaaabaaababbaaaabbbbaaababbbabbbabbbabbbbbababbbaababbbbbabbbbaababaaabaaabaaababaaabbbaababaabaaaababbaabbaababbbbaaaababbbbbaaaababbabbbbabbabbbbababaaaaaab...
output:
200000 199999 198994 148994 48994 98994 198995 148995 48995 98995 158634 108634 8634 58634 198996 148996 48996 98996 170208 120208 20208 70208 158635 108635 8635 58635 177882 127882 27882 77882 182218 132218 32218 82218 166598 116598 16598 66598 198997 148997 48997 98997 170209 120209 20209 70209 15...
result:
ok single line: '200000 199999 198994 148994 48...48993 48993 98993 100000 99998 '
Test #13:
score: 0
Accepted
time: 1811ms
memory: 85876kb
input:
200000 babbbabbbababababaabaabbbbaababaabbababbbbaababbbabaabaaaabbaaaaaaaaaababababababaabbaaaabbaabbbabbbabaaabaaaabbbabaaabaabbbabbaabbbbaaaaabbaabbbbabbbbbbbaabbbaabaabaaabababbbabbabbabbbbbaabaababbbababbbababbababaabbbabbbbbbaaabbbaaaabaaaaababaaaabaaaabbaaaaaaabbabbababbbbaabbaabaaaabbaaababa...
output:
200000 199382 149382 49382 99382 199383 149383 49383 99383 199384 149384 49384 99384 199385 149385 49385 99385 177151 127151 27151 77151 199386 149386 49386 99386 177635 127635 27635 77635 196562 146562 46562 96562 152693 102693 2693 52693 177152 127152 27152 77152 199387 149387 49387 99387 199714 1...
result:
ok single line: '200000 199382 149382 49382 993...49381 49381 99381 100000 99999 '
Test #14:
score: 0
Accepted
time: 1698ms
memory: 86204kb
input:
200000 aaaaabbbaaabbbaabaabbbbabababbbabaabbaaaabbaabaababbbabbababbababaabbaaabaababbabbaababbaabbbbabbaaabaabbaabbbbabaababbbbbaabbaaaabbbabaababbbbababaababbaabbbbabaaabbabaaabbbbaabaabbaababbaabbbaaaaaabbbaaabababaababbabbabaababbaabaaabbaaababaabaaaabaabbabbbbabbbabbaaabbbbababbaabababbababbaab...
output:
200000 199999 199998 199997 199996 199995 199994 199993 199992 199991 199990 199989 199988 199987 199986 199985 199984 199983 199982 199981 199980 199979 199978 199977 199976 199975 199974 199973 199972 199971 199970 199969 199968 199967 199966 199965 199964 199963 199962 199961 199960 199959 199958...
result:
ok single line: '200000 199999 199998 199997 19...0000 140000 40000 90000 100000 '
Test #15:
score: 0
Accepted
time: 1741ms
memory: 86956kb
input:
200000 aaabbabaaababaaababaaaaabaaaaaabbaaaabbbabbabbbbbaababbaabbbaaaaaabbbabbababaabbabababbbaaababbaaaaaabaabbbababbbaaaaaababaabaabbbbbbbbbabbababbababbaabaabababaaaaaaaaaaaabaabbbbbabbabaabbbbabbbabababbbbbbabbaabbaaaaaaababbababbbabbaaaabbbbbabaabababbabaabbaaaaaaaaaaaabaabbaaababbababbbaabbbb...
output:
200000 199999 199998 199997 199996 199995 199994 199993 199992 199991 199990 199989 199988 199987 199986 199985 199984 199983 199982 199981 199980 199979 199978 199977 199976 199975 199974 199973 199972 199971 199970 199969 199968 199967 199966 199965 199964 199963 199962 199961 199960 199959 199958...
result:
ok single line: '200000 199999 199998 199997 19...0000 110000 10000 60000 100000 '
Test #16:
score: 0
Accepted
time: 1813ms
memory: 86424kb
input:
200000 ddcacbccbcbcbbdabdabaaacbadcadbdbccadbbadcbaadbdaadcddbddcacddcbdccbcbcdcbacdadddaadabababcbcdacaabcddabcbaadcbcddaccdbdabcdddaacadacccbadaccaaaddabccdcabaadcadddbadcbccadddabddbbcaacbbaabcaacaadccabbdddbcaabbcbcbdbddaaababbdabbdbbcaaaacdbcadbacccdcccaacaaccdbbdabcaabddbddacbdbadcddabccdcadbd...
output:
200000 162374 112374 12374 62374 197516 147516 47516 97516 161970 111970 11970 61970 162375 112375 12375 62375 175087 125087 25087 75087 185120 135120 35120 85120 150567 100567 567 50567 155685 105685 5685 55685 183348 133348 33348 83348 154329 104329 4329 54329 162118 112118 12118 62118 187919 1379...
result:
ok single line: '200000 162374 112374 12374 623...1967 185117 135117 35117 85117 '
Test #17:
score: 0
Accepted
time: 1782ms
memory: 86324kb
input:
200000 aadcaaddcdcabdadbbbcdaaddcbdccbcdacbaaaccbbccabaabcabbaaaadabcbbbadcbacababadaacddaddbaabcbdccacbaccccdbdabcdbcbadccbcdcbdbacbdbdcdbaabbabcbddcbdadbbcccaaddacdbcacabadcdaccddadcacbcdccacadaddbadcbbbbbbdcbccbcdabddabaacaabdabdabcbcccbddcccabaddcacadadcddbcddbddadaddcdbbbdacaaccbabbddccadcacdca...
output:
200000 158109 108109 8109 58109 194537 144537 44537 94537 158851 108851 8851 58851 174712 124712 24712 74712 161737 111737 11737 61737 153374 103374 3374 53374 198951 148951 48951 98951 199713 149713 49713 99713 196401 146401 46401 96401 169769 119769 19769 69769 158110 108110 8110 58110 163685 1136...
result:
ok single line: '200000 158109 108109 8109 5810... 150193 100193 193 50193 99998 '
Test #18:
score: 0
Accepted
time: 1738ms
memory: 87020kb
input:
200000 dbbabaccddcbccabccabacbdddbdbbabadcbadbdaaadadacdbaabcbdbbbabccddabbbbdcddaaadcdbbcdbcddabbbccdbababcdbacbacbdadaddddcddcaababdccabcacbbaaabbcdbbbbbacabccdbdbbacaadbdacadacacbaadcaaadcdabcbbdddbdcbadddccbadaabbbdbabccddadacccbdaaaabccaddbaddbbbaadbdcadaabadacadbcdcbdbbdbcbddaaacbabcbdadcabbda...
output:
200000 199999 199998 199997 199996 199995 199994 199993 199992 199991 199990 199989 199988 199987 199986 199985 199984 199983 199982 199981 199980 199979 199978 199977 199976 199975 199974 199973 199972 199971 199970 199969 199968 199967 199966 199965 199964 199963 199962 199961 199960 199959 199958...
result:
ok single line: '200000 199999 199998 199997 19...58782 154425 104425 4425 54425 '
Test #19:
score: 0
Accepted
time: 1941ms
memory: 86812kb
input:
200000 acabdaadaaaaacabcbccccbdcdbcccbbcaadadacdbdcabaaaabcdabbadcaadccabcbcbbbbcddccbccbcbabdababacdcdcaacddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd...
output:
200000 150101 100101 101 50101 150102 100102 102 50102 150103 100103 103 50103 150104 100104 104 50104 150105 100105 105 50105 150106 100106 106 50106 150107 100107 107 50107 150108 100108 108 50108 150109 100109 109 50109 150110 100110 110 50110 150111 100111 111 50111 150112 100112 112 50112 15011...
result:
ok single line: '200000 150101 100101 101 50101...52 100052 52 50052 99998 99997 '
Test #20:
score: 0
Accepted
time: 1620ms
memory: 86384kb
input:
200000 baaccacdcdacbaddacbcabcbacacbdccabbbcaabaacabaccacbdaddbadccadadcaccddcdccdbadbaadcaadbaacaddadaddbbdcabccabcdbddccccabcaabcbcbdbaabdbdaddddbbdbdbdbdcadacbdcdcbbcbbcbbdaabbbabcaccdcbdabddadddabbcddcbdaacdddcddacbdcddddbddadbdadcdcdccccddbdddbcbabddbccdaacdbaadcaddcacadcdcbcdcdaccdbbaaabacdcdd...
output:
200000 159999 109999 9999 59999 160000 110000 10000 60000 160001 110001 10001 60001 160002 110002 10002 60002 160003 110003 10003 60003 160004 110004 10004 60004 160005 110005 10005 60005 160006 110006 10006 60006 160007 110007 10007 60007 160008 110008 10008 60008 160009 110009 10009 60009 160010 1...
result:
ok single line: '200000 159999 109999 9999 5999...157014 107014 7014 57014 99999 '
Test #21:
score: 0
Accepted
time: 1661ms
memory: 86132kb
input:
200000 adcgdbiddajgagbiccceagebbddhgdgifdajjgiebcjigfhifacdcgjecahefgbhgfgeadghajigjcdfdbcjbhghdadadfdibagjhjacjdfadabhfdegeijgcbfgceigfbbdiiehgbbgieefgaiceadigicceaaagheihaecahcefabdaeaifajddegbdegjhaedhgjggbfahgeajcefajceeeeeaaefjiheggcejjidgaaidjbgfhbehcbfehjddeihieaahagaiidgaehigeahcbdbhgjfdjbef...
output:
200000 160001 110001 10001 60001 160002 110002 10002 60002 160003 110003 10003 60003 160004 110004 10004 60004 160005 110005 10005 60005 160006 110006 10006 60006 160007 110007 10007 60007 160008 110008 10008 60008 160009 110009 10009 60009 160010 110010 10010 60010 160011 110011 10011 60011 160012 ...
result:
ok single line: '200000 160001 110001 10001 600...7206 193399 143399 43399 93399 '
Test #22:
score: 0
Accepted
time: 1979ms
memory: 87004kb
input:
200000 jheibdbibcffbbfbcicgahcgjihhacgageedicchehhifcibheeedgfgcihhbacdhbddjfccifahfchchiidebaghdedgddifjjffbcgbgdbijfgbdieceiegdjhabgfajgechcjidfcfffhahbddhbjdieabedbjacfdeaagihiafcjcbcaefadhgificaeggggedhgdfadcgddhdgjhacffjfeijcfjcfgejeejcbighfggcgfjfjabichebeiiceaicajgfggaffchcafffccjhgbhbdhaebcf...
output:
200000 153871 103871 3871 53871 153872 103872 3872 53872 153873 103873 3873 53873 173769 123769 23769 73769 162839 112839 12839 62839 155370 105370 5370 55370 186238 136238 36238 86238 156423 106423 6423 56423 160950 110950 10950 60950 197281 147281 47281 97281 181666 131666 31666 81666 150387 10038...
result:
ok single line: '200000 153871 103871 3871 5387...9999 173680 123680 23680 73680 '
Test #23:
score: 0
Accepted
time: 1823ms
memory: 86816kb
input:
200000 bbccibcbaighbacjcggfiidaaediedfgicfdggfdbcigbifjfdbgbchhibbdeihhbhcigffghdjaajfjgejdeghcgbjhehecabbcghifcieahfgjdjbacbadhdihahhehdgechfcbabghcjbggcdfeffggihbfbcaaiiaadjebdbfhdjefhbghgbgbbahghahadaggdcaigahifaigghcfegbecdfjdaejddbcgfdjhhejjeigceidchehihbdjcedgjbbfeaaaacgebbjhcgbgiaeehgaefdjade...
output:
200000 151001 101001 1001 51001 151002 101002 1002 51002 151003 101003 1003 51003 151004 101004 1004 51004 151005 101005 1005 51005 151006 101006 1006 51006 151007 101007 1007 51007 151008 101008 1008 51008 151009 101009 1009 51009 151010 101010 1010 51010 151011 101011 1011 51011 151012 101012 1012...
result:
ok single line: '200000 151001 101001 1001 5100... 99574 150917 100917 917 50917 '
Test #24:
score: 0
Accepted
time: 2020ms
memory: 87020kb
input:
200000 ahiidgidhcadjjaffeaddifajefhadggbfhhbgdjhaihigjecfacjeedbahbbjcceibhhcggchibgebjgjhejjcbebefedeiiahchdbhicbeijgbffdbjfbfcdibeidfefacffgifjicaaaidaggfbbddgcidecdbcfaadaaegibbijbjigjiddfgadheehfbjdbbcabafafbcdggagcajdhejaiagcaiihabadjghaebaccbaaeddjjeddjdbcggiceggegeichacbgaiebccghbhicghbfhajcf...
output:
200000 185891 135891 35891 85891 186087 136087 36087 86087 195621 145621 45621 95621 182127 132127 32127 82127 183326 133326 33326 83326 180565 130565 30565 80565 184411 134411 34411 84411 185892 135892 35892 85892 175961 125961 25961 75961 187223 137223 37223 87223 162342 112342 12342 62342 188866 ...
result:
ok single line: '200000 185891 135891 35891 858...4588 182375 132375 32375 82375 '
Test #25:
score: 0
Accepted
time: 2048ms
memory: 86784kb
input:
200000 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...
output:
200000 199999 174999 125000 25000 74999 175000 125001 25001 150000 100001 1 50000 75000 175001 125002 25002 150001 100002 2 50001 75001 175002 125003 25003 150002 100003 3 50002 75002 175003 125004 25004 150003 100004 4 50003 75003 175004 125005 25005 150004 100005 5 50004 75004 175005 125006 25006 ...
result:
ok single line: '200000 199999 174999 125000 25...24999 24999 74998 100000 99998 '
Test #26:
score: -100
Time Limit Exceeded
input:
199941 hbbhbhhbbhhbhbbhbhhbhbbhhbbhbhhbbhhbhbbhhbbhbhhbhbbhbhhbbhhbhbbhbhhbhbbhhbbhbhhbhbbhbhhbbhhbhbbhhbbhbhhbbhhbhbbhbhhbhbbhhbbhbhhbbhhbhbbhhbbhbhhbhbbhbhhbbhhbhbbhhbbhbhhbbhhbhbbhbhhbhbbhhbbhbhhbhbbhbhhbbhhbhbbhbhhbhbbhhbbhbhhbbhhbhbbhhbbhbhhbhbbhbhhbbhhbhbbhbhhbhbbhhbbhbhhbhbbhbhhbbhhbhbbhhbbhb...
output:
199941 199938 199922 199874 199682 154754 166274 70274 75394 174210 63106 146562 33282 79746 13570 126210 149506 37634 386 187906 151938 123010 72706 156290 65410 184834 69250 125954 49026 176898 73986 57858 46210 96898 50050 68610 135554 70402 168066 56194 22914 36994 91906 13954 27010 171522 8450 ...