CSES - Datatähti 2022 alku - Results
Submission details
Task:Merkkijono (String)
Sender:wolruso
Submission time:2021-10-08 17:04:39
Language:C++11
Status:READY
Result:100
Feedback
groupverdictscore
#1ACCEPTED100
Test results
testverdicttime
#1ACCEPTED0.01 sdetails
#2ACCEPTED0.01 sdetails
#3ACCEPTED0.01 sdetails
#4ACCEPTED0.01 sdetails
#5ACCEPTED0.01 sdetails
#6ACCEPTED0.01 sdetails
#7ACCEPTED0.01 sdetails
#8ACCEPTED0.01 sdetails
#9ACCEPTED0.01 sdetails
#10ACCEPTED0.01 sdetails
#11ACCEPTED0.01 sdetails
#12ACCEPTED0.01 sdetails
#13ACCEPTED0.01 sdetails
#14ACCEPTED0.01 sdetails
#15ACCEPTED0.01 sdetails
#16ACCEPTED0.01 sdetails

Compiler report

input/code.cpp: In function 'int main()':
input/code.cpp:6:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d", &numPhases);
     ~~~~~^~~~~~~~~~~~~~~~~~

Code

#include <stdio.h>

int main() {
    int numPhases, arrayLength, strLength, tmpLength;
    char *str, *tmp;
    scanf("%d", &numPhases);

    if(numPhases < 2) {
        printf("a");
        return 0;
    }
    
    arrayLength = 2;
    for(int i = 1; i < numPhases; i++){
        arrayLength *= 2;
    }
    arrayLength -= 1;

    str = new char[arrayLength];
    tmp = new char[arrayLength];
    tmp[0] = 'a';
    strLength = 1;
    tmpLength = 1;

    for(int i = 1; i < numPhases; i++) {
        // Place the next character in front of every character in str
        for(int j = 0; j < tmpLength; j++){
            str[2 * j] = 'a' + i;
            str[2 * j + 1] = tmp[j];
            strLength++;
        }
        // Place the next character in the alphabet into the end
        str[strLength] = 'a' + i;
        strLength++;
        // Copy str to tmp
        for(int j = 0; j < strLength; j++) tmp[j] = str[j];
        tmpLength = strLength;
    }
    printf("%s", str);
    return 0;
}

Test details

Test 1

Verdict: ACCEPTED

input
1

correct output
a

user output
a

Test 2

Verdict: ACCEPTED

input
2

correct output
bab

user output
bab

Test 3

Verdict: ACCEPTED

input
3

correct output
cbcacbc

user output
cbcacbc

Test 4

Verdict: ACCEPTED

input
4

correct output
dcdbdcdadcdbdcd

user output
dcdbdcdadcdbdcd

Test 5

Verdict: ACCEPTED

input
5

correct output
edecedebedecedeaedecedebedeced...

user output
edecedebedecedeaedecedebedeced...

Test 6

Verdict: ACCEPTED

input
6

correct output
fefdfefcfefdfefbfefdfefcfefdfe...

user output
fefdfefcfefdfefbfefdfefcfefdfe...

Test 7

Verdict: ACCEPTED

input
7

correct output
gfgegfgdgfgegfgcgfgegfgdgfgegf...

user output
gfgegfgdgfgegfgcgfgegfgdgfgegf...

Test 8

Verdict: ACCEPTED

input
8

correct output
hghfhghehghfhghdhghfhghehghfhg...

user output
hghfhghehghfhghdhghfhghehghfhg...

Test 9

Verdict: ACCEPTED

input
9

correct output
ihigihifihigihieihigihifihigih...

user output
ihigihifihigihieihigihifihigih...

Test 10

Verdict: ACCEPTED

input
10

correct output
jijhjijgjijhjijfjijhjijgjijhji...

user output
jijhjijgjijhjijfjijhjijgjijhji...

Test 11

Verdict: ACCEPTED

input
11

correct output
kjkikjkhkjkikjkgkjkikjkhkjkikj...

user output
kjkikjkhkjkikjkgkjkikjkhkjkikj...

Test 12

Verdict: ACCEPTED

input
12

correct output
lkljlklilkljlklhlkljlklilkljlk...

user output
lkljlklilkljlklhlkljlklilkljlk...

Test 13

Verdict: ACCEPTED

input
13

correct output
mlmkmlmjmlmkmlmimlmkmlmjmlmkml...

user output
mlmkmlmjmlmkmlmimlmkmlmjmlmkml...

Test 14

Verdict: ACCEPTED

input
14

correct output
nmnlnmnknmnlnmnjnmnlnmnknmnlnm...

user output
nmnlnmnknmnlnmnjnmnlnmnknmnlnm...

Test 15

Verdict: ACCEPTED

input
15

correct output
onomonolonomonokonomonolonomon...

user output
onomonolonomonokonomonolonomon...

Test 16

Verdict: ACCEPTED

input
16

correct output
popnpopmpopnpoplpopnpopmpopnpo...

user output
popnpopmpopnpoplpopnpopmpopnpo...