제출 #1200181

#제출 시각아이디문제언어결과실행 시간메모리
1200181prince9월 (APIO24_september)C++17
컴파일 에러
0 ms0 KiB
int solve(int n, int m, vector<int> a, vector<vector<int>> vol) {
    int L = n - 1;
    // Build position table: pos[j][x] = index of x in volunteer j's sequence
    vector<vector<int>> pos(m, vector<int>(n));
    for (int j = 0; j < m; j++) {
        for (int i = 0; i < L; i++) {
            pos[j][ vol[j][i] ] = i;
        }
    }
    
    // Reference sequence from volunteer 0
    const vector<int>& s0 = vol[0];
    
    // For each position i in s0, compute the max and min positions across all volunteers
    vector<int> mx(L), mn(L);
    for (int i = 0; i < L; i++) {
        int x = s0[i];
        int p_max = pos[0][x], p_min = pos[0][x];
        for (int j = 1; j < m; j++) {
            p_max = max(p_max, pos[j][x]);
            p_min = min(p_min, pos[j][x]);
        }
        mx[i] = p_max;
        mn[i] = p_min;
    }
    
    // Build prefix max of mx and suffix min of mn
    vector<int> pref_max(L), suf_min(L);
    pref_max[0] = mx[0];
    for (int i = 1; i < L; i++) {
        pref_max[i] = max(pref_max[i-1], mx[i]);
    }
    suf_min[L-1] = mn[L-1];
    for (int i = L-2; i >= 0; i--) {
        suf_min[i] = min(suf_min[i+1], mn[i]);
    }
    
    // Count valid day boundaries
    int boundaries = 0;
    for (int i = 0; i + 1 < L; i++) {
        if (pref_max[i] < suf_min[i+1]) {
            boundaries++;
        }
    }
    
    // Number of days is boundaries + 1
    return boundaries + 1;
}

컴파일 시 표준 에러 (stderr) 메시지

september.cpp:1:25: error: 'vector' has not been declared
    1 | int solve(int n, int m, vector<int> a, vector<vector<int>> vol) {
      |                         ^~~~~~
september.cpp:1:31: error: expected ',' or '...' before '<' token
    1 | int solve(int n, int m, vector<int> a, vector<vector<int>> vol) {
      |                               ^
september.cpp: In function 'int solve(int, int, int)':
september.cpp:4:5: error: 'vector' was not declared in this scope
    4 |     vector<vector<int>> pos(m, vector<int>(n));
      |     ^~~~~~
september.cpp:4:19: error: expected primary-expression before 'int'
    4 |     vector<vector<int>> pos(m, vector<int>(n));
      |                   ^~~
september.cpp:7:13: error: 'pos' was not declared in this scope
    7 |             pos[j][ vol[j][i] ] = i;
      |             ^~~
september.cpp:7:21: error: 'vol' was not declared in this scope
    7 |             pos[j][ vol[j][i] ] = i;
      |                     ^~~
september.cpp:12:11: error: 'vector' does not name a type
   12 |     const vector<int>& s0 = vol[0];
      |           ^~~~~~
september.cpp:15:12: error: expected primary-expression before 'int'
   15 |     vector<int> mx(L), mn(L);
      |            ^~~
september.cpp:17:17: error: 's0' was not declared in this scope
   17 |         int x = s0[i];
      |                 ^~
september.cpp:18:21: error: 'pos' was not declared in this scope
   18 |         int p_max = pos[0][x], p_min = pos[0][x];
      |                     ^~~
september.cpp:20:21: error: 'max' was not declared in this scope; did you mean 'p_max'?
   20 |             p_max = max(p_max, pos[j][x]);
      |                     ^~~
      |                     p_max
september.cpp:21:13: error: 'p_min' was not declared in this scope
   21 |             p_min = min(p_min, pos[j][x]);
      |             ^~~~~
september.cpp:21:21: error: 'min' was not declared in this scope
   21 |             p_min = min(p_min, pos[j][x]);
      |                     ^~~
september.cpp:23:9: error: 'mx' was not declared in this scope; did you mean 'x'?
   23 |         mx[i] = p_max;
      |         ^~
      |         x
september.cpp:24:9: error: 'mn' was not declared in this scope; did you mean 'n'?
   24 |         mn[i] = p_min;
      |         ^~
      |         n
september.cpp:24:17: error: 'p_min' was not declared in this scope
   24 |         mn[i] = p_min;
      |                 ^~~~~
september.cpp:28:12: error: expected primary-expression before 'int'
   28 |     vector<int> pref_max(L), suf_min(L);
      |            ^~~
september.cpp:29:5: error: 'pref_max' was not declared in this scope
   29 |     pref_max[0] = mx[0];
      |     ^~~~~~~~
september.cpp:29:19: error: 'mx' was not declared in this scope; did you mean 'm'?
   29 |     pref_max[0] = mx[0];
      |                   ^~
      |                   m
september.cpp:31:23: error: 'max' was not declared in this scope
   31 |         pref_max[i] = max(pref_max[i-1], mx[i]);
      |                       ^~~
september.cpp:33:5: error: 'suf_min' was not declared in this scope
   33 |     suf_min[L-1] = mn[L-1];
      |     ^~~~~~~
september.cpp:33:20: error: 'mn' was not declared in this scope; did you mean 'n'?
   33 |     suf_min[L-1] = mn[L-1];
      |                    ^~
      |                    n
september.cpp:35:22: error: 'min' was not declared in this scope
   35 |         suf_min[i] = min(suf_min[i+1], mn[i]);
      |                      ^~~