Submission #1305681

#TimeUsernameProblemLanguageResultExecution timeMemory
1305681hoshCave (IOI13_cave)C++20
Compilation error
0 ms0 KiB
void exploreCave(int N) {
    vector<int> S(N, 0);
    vector<int> D(N, -1);
    vector<int> A(N, 0);
    vector<int> B;

    for (int door = 0; door < N; door++) {

        for (int i = 0; i < N; i++) {
            if (A[i] == 0) {
                S[i] = 1;
            }
        }

        int trt = tryCombination(S.data());
        int doorv;

        if (trt == -1 || trt > door) {
            doorv = 1;
        } else {
            doorv = 0;
        }

        B.clear();
        for (int i = 0; i < N; i++) {
            if (A[i] == 0) {
                B.push_back(i);
            }
        }

        while (B.size() > 1) {

            int half = B.size() / 2;

            for (int i = 0; i < B.size(); i++) {
                if (i < half) {
                    S[B[i]] = doorv;
                } else {
                    S[B[i]] = 1 - doorv;
                }
            }

            trt = tryCombination(S.data());

            if (trt == -1 || trt > door) {
                B.resize(half);
            } else {
                B.erase(B.begin(), B.begin() + half);
            }
        }

        int sw = B[0];
        A[sw] = 1;
        S[sw] = doorv;
        D[door] = sw;
    }

    answer(S.data(), D.data());
}

Compilation message (stderr)

cave.cpp: In function 'void exploreCave(int)':
cave.cpp:2:5: error: 'vector' was not declared in this scope
    2 |     vector<int> S(N, 0);
      |     ^~~~~~
cave.cpp:2:12: error: expected primary-expression before 'int'
    2 |     vector<int> S(N, 0);
      |            ^~~
cave.cpp:3:12: error: expected primary-expression before 'int'
    3 |     vector<int> D(N, -1);
      |            ^~~
cave.cpp:4:12: error: expected primary-expression before 'int'
    4 |     vector<int> A(N, 0);
      |            ^~~
cave.cpp:5:12: error: expected primary-expression before 'int'
    5 |     vector<int> B;
      |            ^~~
cave.cpp:10:17: error: 'A' was not declared in this scope
   10 |             if (A[i] == 0) {
      |                 ^
cave.cpp:11:17: error: 'S' was not declared in this scope
   11 |                 S[i] = 1;
      |                 ^
cave.cpp:15:34: error: 'S' was not declared in this scope
   15 |         int trt = tryCombination(S.data());
      |                                  ^
cave.cpp:15:19: error: 'tryCombination' was not declared in this scope
   15 |         int trt = tryCombination(S.data());
      |                   ^~~~~~~~~~~~~~
cave.cpp:24:9: error: 'B' was not declared in this scope
   24 |         B.clear();
      |         ^
cave.cpp:26:17: error: 'A' was not declared in this scope
   26 |             if (A[i] == 0) {
      |                 ^
cave.cpp:53:9: error: 'A' was not declared in this scope
   53 |         A[sw] = 1;
      |         ^
cave.cpp:55:9: error: 'D' was not declared in this scope
   55 |         D[door] = sw;
      |         ^
cave.cpp:58:12: error: 'S' was not declared in this scope
   58 |     answer(S.data(), D.data());
      |            ^
cave.cpp:58:22: error: 'D' was not declared in this scope
   58 |     answer(S.data(), D.data());
      |                      ^
cave.cpp:58:5: error: 'answer' was not declared in this scope
   58 |     answer(S.data(), D.data());
      |     ^~~~~~