Submission details
Task:Rotations
Sender:kkivimaki
Submission time:2020-09-26 15:40:39 +0300
Language:C++ (C++11)
Status:READY
Result:
Test results
testverdicttime
#1--details
#2--details
#30.40 sdetails
#40.41 sdetails
#50.41 sdetails
#6--details
#7--details
#8ACCEPTED0.01 sdetails
#9ACCEPTED0.01 sdetails
#10ACCEPTED0.01 sdetails
#11ACCEPTED0.01 sdetails
#12--details

Compiler report

input/code.cpp: In function 'bool better(std::__cxx11::string, int, int)':
input/code.cpp:19:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     while(k < s.size() && s[(i + k) % s.size()] == s[(j + k) % s.size()]) k++;
           ~~^~~~~~~~~~
input/code.cpp: In function 'int main()':
input/code.cpp:30:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(int i = 1; i < s.size(); i++)
                    ~~^~~~~~~~~~

Code

#include <vector>
#include <iostream>
#include <string>


using namespace std;

void print(string s, int a) {
    int n = s.size();
    for(int i = a; i < n; i++)
        cout << s[i];
    for(int i = 0; i < a; i++)
        cout << s[i];
    cout << endl;
}

bool better(string s, int i, int j) {
    int k = 0;
    while(k < s.size() && s[(i + k) % s.size()] == s[(j + k) % s.size()]) k++; 
    return s[i] < s[j];
}


int main() {
    string s;
    cin >> s;

    int b = 0;

    for(int i = 1; i < s.size(); i++)
        if(better(s, i, b)) b = i;

    print(s, b);

    return 0;
}

Test details

Test 1

Verdict:

input
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

correct output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

user output
(empty)

Test 2

Verdict:

input
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb...

correct output
abbbbbbbbbbbbbbbbbbbbbbbbbbbbb...

user output
(empty)

Test 3

Verdict:

input
jibanqfglkmsywdlqjquxxnqeyhbyu...

correct output
aaadptqmkuqxnvmojzhghqtfztbwsj...

user output
anqfglkmsywdlqjquxxnqeyhbyukwr...
Truncated

Test 4

Verdict:

input
muykjgvsstkgydmumitbgvsbtgyvmv...

correct output
aaaeaeipiqglrtbzelgrqmrxqbnjke...

user output
aiaspemtdyowiuutbskdkjutjydnpp...
Truncated

Test 5

Verdict:

input
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

correct output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

user output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...
Truncated

Test 6

Verdict:

input
aaaaaaaaabaaaaaaaaabaaaaaaaaab...

correct output
aaaaaaaaabaaaaaaaaabaaaaaaaaab...

user output
(empty)

Test 7

Verdict:

input
jtcbpjizbiauauipwsdteaisynwesj...

correct output
aisynwesjvtvgghnbqyqprwpfqayzl...

user output
(empty)

Test 8

Verdict: ACCEPTED

input
a

correct output
a

user output
a

Test 9

Verdict: ACCEPTED

input
ab

correct output
ab

user output
ab

Test 10

Verdict: ACCEPTED

input
ba

correct output
ab

user output
ab

Test 11

Verdict: ACCEPTED

input
home

correct output
ehom

user output
ehom

Test 12

Verdict:

input
baaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

correct output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

user output
(empty)