Submission #1289623

#TimeUsernameProblemLanguageResultExecution timeMemory
1289623azradudukalayNorela (info1cup18_norela)C++20
Compilation error
0 ms0 KiB
#include <bits/stdc++.h>
using namespace std;
int dp(int i, vector<int>& a, vector<int>& ddp) {
    if(ddp[i] != -1) return ddp[i];
    int mx = 1;
    for(int j = 0; j < i; j++) {
        if(a[j] <= a[i]) {
            mx = max(mx, dp(j, a, dp) + 1);
        }
    }
    ddp[i] = mx;
    return mx;
}
int main() {
    int n;
    cin >> n;
    vector<int> a(n);
    for(int i = 0; i < n; i++) cin >> a[i];

    vector<int> ddp(n, -1);
    int mx = 0;
    for(int i = 0; i < n; i++) mx = max(mx, dp(i, a, ddp));
    cout << mx << endl;
}

Compilation message (stderr)

norela.cpp: In function 'int dp(int, std::vector<int>&, std::vector<int>&)':
norela.cpp:8:35: error: invalid initialization of reference of type 'std::vector<int>&' from expression of type 'int(int, std::vector<int>&, std::vector<int>&)'
    8 |             mx = max(mx, dp(j, a, dp) + 1);
      |                                   ^~
norela.cpp:3:44: note: in passing argument 3 of 'int dp(int, std::vector<int>&, std::vector<int>&)'
    3 | int dp(int i, vector<int>& a, vector<int>& ddp) {
      |                               ~~~~~~~~~~~~~^~~