CSES - KILO 2016 4/5 - Results
Submission details
Task:String
Sender:PyPy > Assembly
Submission time:2016-09-27 18:59:18 +0300
Language:Java
Status:READY
Result:
Test results
testverdicttime
#1ACCEPTED0.10 sdetails
#2ACCEPTED0.11 sdetails
#3ACCEPTED0.54 sdetails
#4ACCEPTED0.09 sdetails
#5ACCEPTED0.11 sdetails
#6ACCEPTED0.10 sdetails
#7--details
#8ACCEPTED0.11 sdetails
#9ACCEPTED0.10 sdetails
#10ACCEPTED0.11 sdetails
#11ACCEPTED0.84 sdetails
#12ACCEPTED0.15 sdetails
#130.11 sdetails
#140.16 sdetails
#15ACCEPTED0.82 sdetails
#16ACCEPTED0.16 sdetails
#170.09 sdetails
#18ACCEPTED0.14 sdetails
#19ACCEPTED0.81 sdetails
#20ACCEPTED0.15 sdetails
#210.16 sdetails
#220.14 sdetails
#23ACCEPTED0.20 sdetails
#24ACCEPTED0.16 sdetails
#250.17 sdetails
#260.17 sdetails
#27--details
#28ACCEPTED0.17 sdetails
#290.16 sdetails
#300.15 sdetails

Code

class Str {

    public static boolean canGotoA(char c, long count) {
        if (count > 25)
            return true;
        if (c + (char) count > 'z')
            return true;
        return false;
    }

    public static int toA(char c) {
        return ('z' + 1) - c;
    }

    public static int add(char c, long count) {
        char out = c;
        while (count > 0) {
            count--;
            out++;
            if (out > 'z')
                out = 'a';
        }
        return out;
        /*char n = (char) (count % 26);
        if (c + n > 'z')
            return 'a' + ('z' - (c + n));
        return c + n;*/
    }

    public static void main(String[] args) {
        IO io = new IO();

        long s = io.nextLong();
        long ss = s;
        String k = io.next();

        StringBuilder sb = new StringBuilder(k.length());

        for (int i = 0; i < k.length(); i++) {
            if (i == k.length() - 1) {
                // last char
                sb.append((char) add(k.charAt(i), ss));
                ss -= ss;
            } else if (canGotoA(k.charAt(i), ss)) {
                // can go to a
                sb.append('a');
                ss -= toA(k.charAt(i));
            } else {
                // can't go to a
                sb.append(k.charAt(i));
            }
        }

        System.out.println(sb.toString());
    }
}

Test details

Test 1

Verdict: ACCEPTED

input
887
lrbb

correct output
aaah

user output
aaah

Test 2

Verdict: ACCEPTED

input
760493
bhcdarz

correct output
aaaaaaw

user output
aaaaaaw

Test 3

Verdict: ACCEPTED

input
365180541
kkyhidd

correct output
aaaaaay

user output
aaaaaay

Test 4

Verdict: ACCEPTED

input
1
cdx

correct output
cdy

user output
cdy

Test 5

Verdict: ACCEPTED

input
3930
mowfrx

correct output
aaaaat

user output
aaaaat

Test 6

Verdict: ACCEPTED

input
175012
ybldbef

correct output
aaaaaad

user output
aaaaaad

Test 7

Verdict:

input
973594325
rcbynecdy

correct output
aaaaaaaab

user output
(empty)

Test 8

Verdict: ACCEPTED

input
7
x

correct output
e

user output
e

Test 9

Verdict: ACCEPTED

input
926
klorel

correct output
aaaaaf

user output
aaaaaf

Test 10

Verdict: ACCEPTED

input
925858
mpap

correct output
aaao

user output
aaao

Test 11

Verdict: ACCEPTED

input
548233368
wkhopkmcoqhnwnkuewhsqmgbbuqclj...

correct output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

user output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

Test 12

Verdict: ACCEPTED

input
8
bdbqvwxdckwntphicbqqfescvpmzja...

correct output
bdbqawadckwntphicbqqfescvpmzja...

user output
bdbqawadckwntphicbqqfescvpmzja...

Test 13

Verdict:

input
9878
cbusdsezmbcxvmfjtkyearvjviwhfb...

correct output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

user output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

Test 14

Verdict:

input
5536
vningmmifzaxwjncavgpjccxuipdxk...

correct output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

user output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

Test 15

Verdict: ACCEPTED

input
574778989
ugefexzkyropvfzryqgamrnstlmlch...

correct output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

user output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

Test 16

Verdict: ACCEPTED

input
9
avfuykxvndelmcsraptvllmvxvvimy...

correct output
aafuakxvndelmcsraptvllmvxvvima...

user output
aafuakxvndelmcsraptvllmvxvvima...

Test 17

Verdict:

input
4186
avqhidqhzridoaotjzuvujccettblw...

correct output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

user output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

Test 18

Verdict: ACCEPTED

input
913168
isefpkqymobalppcslefwzgfnzbkuk...

correct output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

user output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

Test 19

Verdict: ACCEPTED

input
549610773
gkljofuseqwjhsjncvpvlngbhccamd...

correct output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

user output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

Test 20

Verdict: ACCEPTED

input
10
xtlbgkasvbtadcxtxbrdcxbfvjmesy...

correct output
aalbgkasvbtadcxtxbrdcxbfvjmesy...

user output
aalbgkasvbtadcxtxbrdcxbfvjmesy...

Test 21

Verdict:

input
9644
gnjtzrsikjicuazpjmyrskuhhbscpy...

correct output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

user output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

Test 22

Verdict:

input
348829
elgakzqlpyqtqsamdbshvvyqvhhdyb...

correct output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

user output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

Test 23

Verdict: ACCEPTED

input
27703587
cwyqzninwdodwtrogulkqrdsfejplc...

correct output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

user output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

Test 24

Verdict: ACCEPTED

input
9
xzjxyoxwbxspqecxodekyvatwddqpc...

correct output
aajaaoxwbxspqecxodekyvatwddqpc...

user output
aajaaoxwbxspqecxodekyvatwddqpc...

Test 25

Verdict:

input
6840
mgfbgwlluocxchgxmgncfpjyzftlme...

correct output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

user output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

Test 26

Verdict:

input
554050
jfwqiuhoukdfpzsmufbaweptdcltvq...

correct output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

user output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

Test 27

Verdict:

input
848638908
kartntdmgnzdmsnhaijyogfolsqlwh...

correct output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

user output
(empty)

Test 28

Verdict: ACCEPTED

input
1
jyfbmeehodkzrmzhmmpswrbhsnycby...

correct output
jyfbmeehodkarmzhmmpswrbhsnycby...

user output
jyfbmeehodkarmzhmmpswrbhsnycby...

Test 29

Verdict:

input
9343
gqgpjpdglxzlurhipkjgbocytigbfd...

correct output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

user output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

Test 30

Verdict:

input
219927
rtqzfgteqdsxzdcybrjwprktsocdtb...

correct output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

user output
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...