제출 #1218505

#제출 시각아이디문제언어결과실행 시간메모리
1218505nickolasarapidis동굴 (IOI13_cave)C++20
컴파일 에러
0 ms0 KiB
#include "cave.h" #include <bits/stdc++.h> using namespace std; const int MAXN = 5000; vector<int> S, D; vector<bool> B; // 0 up 1 down int first, M; void solve(int l, int r){ if(l == r){ S[l] = 1; int f = tryCombination(S); if(f == -1) f = M; if(f < first){ S[l] = 0; B[l] = 1; D[l] = f; } if(f > first){ B[l] = 1; D[l] = first; first = f; } if(f == first){ S[l] = 0; } return; } int m = (l + r)/2; solve(l, m); solve(m + 1, r); for(int i = l; i <= r; i++){ if(B[i]) continue; S[i] = 1; int f = tryCombination(S); if(f == -1) f = M; if(f < first){ S[i] = 0; B[i] = 1; D[i] = f; } if(f > first){ B[i] = 1; D[i] = first; first = f; } if(f == first){ S[i] = 0; } } return; } void exploreCave(int N){ for(int i = 0; i < N; i++){ S.push_back(0); B.push_back(false); } first = tryCombination(S); if(first == -1) first = N; M = N; solve(0, N - 1); answer(S, D); }

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

cave.cpp: In function 'void solve(int, int)':
cave.cpp:15:40: error: cannot convert 'std::vector<int>' to 'int*'
   15 |                 int f = tryCombination(S);
      |                                        ^
      |                                        |
      |                                        std::vector<int>
In file included from cave.cpp:1:
cave.h:8:24: note:   initializing argument 1 of 'int tryCombination(int*)'
    8 | int tryCombination(int S[]);
      |                    ~~~~^~~
cave.cpp:38:40: error: cannot convert 'std::vector<int>' to 'int*'
   38 |                 int f = tryCombination(S);
      |                                        ^
      |                                        |
      |                                        std::vector<int>
In file included from cave.cpp:1:
cave.h:8:24: note:   initializing argument 1 of 'int tryCombination(int*)'
    8 | int tryCombination(int S[]);
      |                    ~~~~^~~
cave.cpp: In function 'void exploreCave(int)':
cave.cpp:62:32: error: cannot convert 'std::vector<int>' to 'int*'
   62 |         first = tryCombination(S);
      |                                ^
      |                                |
      |                                std::vector<int>
In file included from cave.cpp:1:
cave.h:8:24: note:   initializing argument 1 of 'int tryCombination(int*)'
    8 | int tryCombination(int S[]);
      |                    ~~~~^~~
cave.cpp:66:16: error: cannot convert 'std::vector<int>' to 'int*'
   66 |         answer(S, D);
      |                ^
      |                |
      |                std::vector<int>
In file included from cave.cpp:1:
cave.h:9:17: note:   initializing argument 1 of 'void answer(int*, int*)'
    9 | void answer(int S[], int D[]);
      |             ~~~~^~~