Submission #572783

#TimeUsernameProblemLanguageResultExecution timeMemory
572783jasminDetecting Molecules (IOI16_molecules)C++14
Compilation error
0 ms0 KiB
#include<bits/stdc++.h>
//#include "molecules.h"

using namespace std;
#define int long long

void reconstruct(int x, int i, vector<vector<int> >& last, vector<int>& w, vector<int>& ans){
    while(0<x){
        ans.push_back(last[x][i]);
        int x2=x;
        x-=w[last[x][i]];
        i=last[x2][i];
    }
}

std::vector<int> find_subset(int l, int u, std::vector<int> w) {
    int n=w.size();
    int r=u;
    vector<vector<bool> > dp(r+1, vector<bool> (n+1));
    vector<vector<int> > last(r+1, vector<int> (n+1, -1));

    dp[0][0]=true;
    for(int x=0; x<=r; x++){
        for(int i=0; i<n; i++){
            if(!dp[x][i]) continue;

            dp[x][i+1]=true;
            last[x][i+1]=last[x][i];
            if(x+w[i]<=r){
                dp[x+w[i]][i+1]=true;
                last[x+w[i]][i+1]=i;
            }
        }
    }

    vector<int> ans;
    for(int i=l; i<=r; i++){
        if(dp[i][n]){
            reconstruct(i, n, last, w, ans);
            break;
        }
    }

    return ans;
}

Compilation message (stderr)

/usr/bin/ld: /tmp/ccTw7XTH.o: in function `main':
grader.cpp:(.text.startup+0x18d): undefined reference to `find_subset(int, int, std::vector<int, std::allocator<int> >)'
collect2: error: ld returned 1 exit status