CSES - HIIT Open 2018 - Results
Submission details
Task:HIIT Generation
Sender:TreamDeam
Submission time:2018-05-26 15:23:28 +0300
Language:C++
Status:READY
Result:
Test results
testverdicttime
#10.05 sdetails
#2--details
#30.05 sdetails
#40.02 sdetails

Code

#include <iostream>
#include <string.h>

using namespace std;

int len;
char rep[2000000];
char ii[2000001] = {0};
int cnt = 0;



void write(char letter,int s) {
//cout << "wr\n";
    int a = 0;
    for (int i = s; i < len; i++) {
        if (letter == rep[i]) {
            write('H', i + 1);
            write('I', i + 1);
            write('I', i + 1);
            write('T', i + 1);
            a = 1;
            break;
        }
    }
    if (a == 0)
    //cout << letter;
    ii[cnt++] = letter;
}


int main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0);

    cin >> len;
    char a;
    for (int i = 0; i < len; i++) {
        cin >> a;
        rep[i] = a;
    }
    //cout << rep[0] << " " << rep[1] << "\n";
    write('H', 0);
    int start1 = cnt;
    write('I', 0);
    int end1 = cnt;
    int dif = end1 - start1;
    //cout << start1 << " " << end1 << "\n";
    //for (int i = start1; i < end1; i++) {
    //    ii[i + dif] = ii[i];
    //}

    //memcpy(ii + start1, ii + end1, end1 - start1);
    cnt = end1 + dif;
    //write('I', 0);
    write('T', 0);

    for (int i = 0; i < start1; i++) {
        cout << ii[i];
    }
    for (int j = 0; j < 2; j++)
    for (int i = start1; i < end1; i++) {
        cout << ii[i];
    }
    for (int i = end1; i < cnt; i++) {
        cout << ii[i];
    }

    cout << "\n";

    return 0;
}

Test details

Test 1

Verdict:

input
17
I
I
I
I
...

correct output
HHHHHHHHHHHHHHHHHHIITHIITTHHII...

user output
HHHHHHHHHHHHHHHHHHIITHIITTHHII...

Test 2

Verdict:

input
333332
H
H
H
H
...

correct output
HIITIITIITIITIITIITIITIITIITII...

user output
(empty)

Test 3

Verdict:

input
24
H
T
H
T
...

correct output
HIIHIITIIHIIHIITIIHIITIIHIIHII...

user output
HIIHIITIIHIIHIITIIHIITIIHIIHII...

Test 4

Verdict:

input
0

correct output
HIIT

user output
HIIT