Task: | Rotations |
Sender: | siiruli-admin |
Submission time: | 2018-10-13 14:00:41 +0300 |
Language: | C++ |
Status: | READY |
Result: | TIME LIMIT EXCEEDED |
test | verdict | time | |
---|---|---|---|
#1 | TIME LIMIT EXCEEDED | -- | details |
#2 | TIME LIMIT EXCEEDED | -- | details |
#3 | RUNTIME ERROR | 0.61 s | details |
#4 | RUNTIME ERROR | 0.62 s | details |
#5 | RUNTIME ERROR | 0.51 s | details |
#6 | TIME LIMIT EXCEEDED | -- | details |
#7 | TIME LIMIT EXCEEDED | -- | details |
#8 | UNKNOWN | -- | details |
#9 | UNKNOWN | -- | details |
#10 | UNKNOWN | -- | details |
#11 | UNKNOWN | -- | details |
#12 | UNKNOWN | -- | details |
Code
#include <bits/stdc++.h> #include <fstream> using namespace std; #define PB push_back #define N (1<<22) #define QAQ {cout << "0";return 0; } typedef long long ll; const ll inf = 1000000007; int t[N], z; int main(){ ios::sync_with_stdio(0); cin.tie(0); string s; cin >> s; int n = s.size(); s = s + s; z = 1; while(z < n) z*=2; for(int i=0; i<2*n; ++i) t[i] = s[i]; for(int b=0; b<z; ++b){ vector<pair<ll,ll>> v; for(int i=0; i<2*n; ++i){ v.PB({t[i] * inf + t[i+(1<<b)], i}); } sort(v.begin(), v.end()); ll c=0, prev=0; for(pair<ll, ll> p : v){ if(prev != p.first) prev = p.first, ++c; t[p.second] = c; } } vector<pair<ll, ll>> v; for(int i=0; i<n; ++i){ v.PB({t[i], i}); } sort(v.begin(), v.end()); int V = v[0].second; for(int i=0; i<n; ++i) cout << s[V+i]; }
Test details
Test 1
Verdict: TIME LIMIT EXCEEDED
input |
---|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa... |
correct output |
---|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa... |
user output |
---|
(empty) |
Test 2
Verdict: TIME LIMIT EXCEEDED
input |
---|
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb... |
correct output |
---|
abbbbbbbbbbbbbbbbbbbbbbbbbbbbb... |
user output |
---|
(empty) |
Test 3
Verdict: RUNTIME ERROR
input |
---|
jibanqfglkmsywdlqjquxxnqeyhbyu... |
correct output |
---|
aaadptqmkuqxnvmojzhghqtfztbwsj... |
user output |
---|
(empty) |
Test 4
Verdict: RUNTIME ERROR
input |
---|
muykjgvsstkgydmumitbgvsbtgyvmv... |
correct output |
---|
aaaeaeipiqglrtbzelgrqmrxqbnjke... |
user output |
---|
(empty) |
Test 5
Verdict: RUNTIME ERROR
input |
---|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa... |
correct output |
---|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa... |
user output |
---|
(empty) |
Test 6
Verdict: TIME LIMIT EXCEEDED
input |
---|
aaaaaaaaabaaaaaaaaabaaaaaaaaab... |
correct output |
---|
aaaaaaaaabaaaaaaaaabaaaaaaaaab... |
user output |
---|
(empty) |
Test 7
Verdict: TIME LIMIT EXCEEDED
input |
---|
jtcbpjizbiauauipwsdteaisynwesj... |
correct output |
---|
aisynwesjvtvgghnbqyqprwpfqayzl... |
user output |
---|
(empty) |
Test 8
Verdict: UNKNOWN
input |
---|
a |
correct output |
---|
a |
user output |
---|
(not available) |
Test 9
Verdict: UNKNOWN
input |
---|
ab |
correct output |
---|
ab |
user output |
---|
(not available) |
Test 10
Verdict: UNKNOWN
input |
---|
ba |
correct output |
---|
ab |
user output |
---|
(not available) |
Test 11
Verdict: UNKNOWN
input |
---|
home |
correct output |
---|
ehom |
user output |
---|
(not available) |
Test 12
Verdict: UNKNOWN
input |
---|
baaaaaaaaaaaaaaaaaaaaaaaaaaaaa... |
correct output |
---|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa... |
user output |
---|
(not available) |