CSES - Datatähti 2024 alku - Results
Submission details
Task:Monistus
Sender:Aatos
Submission time:2023-11-02 19:33:29 +0200
Language:C++ (C++20)
Status:READY
Result:71
Feedback
groupverdictscore
#1ACCEPTED71
#20
Test results
testverdicttimegroup
#1ACCEPTED0.00 s1, 2details
#2ACCEPTED0.00 s1, 2details
#3ACCEPTED0.00 s1, 2details
#4ACCEPTED0.00 s1, 2details
#5ACCEPTED0.00 s1, 2details
#6ACCEPTED0.00 s1, 2details
#7ACCEPTED0.00 s1, 2details
#80.14 s2details
#9ACCEPTED0.59 s2details
#10ACCEPTED0.60 s2details
#110.01 s2details
#12--2details
#13--2details
#14--2details

Code

#include <iostream>
#include <string>

#define MAX_LEN 500000

uint32_t last_i = 0;
uint32_t len;
int8_t num;
std::string copy_part;
char c;


std::string parse(std::string& input)
{
    len = input.length();

    if (len >= MAX_LEN)
    {
        input.erase(len, std::string::npos);
        return input;
    }

    for (uint32_t i = last_i; i < len; i++)
    {
        c = input.at(i);
        if (isdigit(c))
        {
            num = c - '0';
            copy_part = input.substr(i + 1, num);

            input.erase(input.begin() + i);
            input.insert(i, copy_part);

            last_i = i;

            return parse(input);
        }
    }

    return input;
}


/*
std::string parse(std::string& input)
{
    uint32_t i = 0;
    uint32_t len = input.length();

    std::string output;
    output.reserve(MAX_LEN);

    while (i < len)
    {
        if (len >= MAX_LEN)
        {
            input.erase(len, std::string::npos);
            return output;
        }
        
        char c = input[i];
        output.push_back(c);

        if (isdigit(c))
        {
            int8_t num = next_c - '0';
            std::string copy_part = input.substr(i + 1, num);

            input.erase(input.begin() + i);
            input.insert(i, copy_part);
        }
    }

    return input;
}
*/


int main()
{
    std::string input;
    std::cin >> input;

    std::cout << parse(input) << std::endl;

    return 0;
}

Test details

Test 1

Group: 1, 2

Verdict: ACCEPTED

input
987654321o987654321p

correct output
oooooooooooooooooooooooooooooo...

user output
oooooooooooooooooooooooooooooo...
Truncated

Test 2

Group: 1, 2

Verdict: ACCEPTED

input
1e1o1zo1r1h1y1m1b1mn

correct output
eeoozzorrhhyymmbbmmn

user output
eeoozzorrhhyymmbbmmn

Test 3

Group: 1, 2

Verdict: ACCEPTED

input
h4y21n7dz6vr1p4go1ec

correct output
hynnnnynnnndzvrppdzvrppdzvrppg...

user output
hynnnnynnnndzvrppdzvrppdzvrppg...

Test 4

Group: 1, 2

Verdict: ACCEPTED

input
bv2olah1h6o4f2mx3z1k

correct output
bvololahhhofmxmxfmxmxofmxmxfmx...

user output
bvololahhhofmxmxfmxmxofmxmxfmx...

Test 5

Group: 1, 2

Verdict: ACCEPTED

input
xewpp2f1l6a5jp1v2v1y

correct output
xewppfffllajpvvajpvvajpvvjpjpv...

user output
xewppfffllajpvvajpvvajpvvjpjpv...

Test 6

Group: 1, 2

Verdict: ACCEPTED

input
1v4z1kjm1t6vp5c1m2np

correct output
vvzkkjzkkjmttvpcmmvpcmmvpcmmnc...

user output
vvzkkjzkkjmttvpcmmvpcmmvpcmmnc...

Test 7

Group: 1, 2

Verdict: ACCEPTED

input
y2bl9cp21v7kgesxm2uv

correct output
yblblcpvvvvkgecpkkkkgecpvvvvkg...

user output
yblblcpvvvvkgecpkkkkgecpvvvvkg...

Test 8

Group: 2

Verdict:

input
987654321b987654321f987654321u...

correct output
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb...

user output
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb...
Truncated

Test 9

Group: 2

Verdict: ACCEPTED

input
agjv4321w9dskvax5ws21r321l9n7d...

correct output
agjvwwwwwwwwwwwwwwwwdskvaxwsds...

user output
agjvwwwwwwwwwwwwwwwwdskvaxwsds...
Truncated

Test 10

Group: 2

Verdict: ACCEPTED

input
4mr1d71k432jt9sddyoy2oq7jvc1bm...

correct output
mrddmrddkkjtjtjtjtjtjtjtjtkkjt...

user output
mrddmrddkkjtjtjtjtjtjtjtjtkkjt...
Truncated

Test 11

Group: 2

Verdict:

input
1a1l1m1a1t1gc1yv1x1p1w1x1d1d1p...

correct output
aallmmaattggcyyvxxppwwxxddddpp...

user output
1a1l1m1a1t1gc1yv1x1p1w1x1d1d1p...
Truncated

Test 12

Group: 2

Verdict:

input
321e321b321a321r321m321f321s32...

correct output
eeeeeeeebbbbbbbbaaaaaaaarrrrrr...

user output
(empty)

Test 13

Group: 2

Verdict:

input
4321e4321l4321t4321w4321g4321c...

correct output
eeeeeeeeeeeeeeeellllllllllllll...

user output
(empty)

Test 14

Group: 2

Verdict:

input
987654321u987654321p987654321g...

correct output
uuuuuuuuuuuuuuuuuuuuuuuuuuuuuu...

user output
(empty)