Submission #1264164

#TimeUsernameProblemLanguageResultExecution timeMemory
1264164vtnooDetecting Molecules (IOI16_molecules)C++20
46 / 100
1094 ms12616 KiB
#include <bits/stdc++.h> using namespace std; const int MAXN=10001; bitset<MAXN> dp[MAXN]; std::vector<int> find_subset(int l, int u, std::vector<int> w){ int n=w.size(); dp[0][0]=true; for(int i=1;i<=n;i++){ dp[i]=dp[i-1]|(dp[i-1]<<w[i-1]); } int x=-1, y=x; for(int i=1;i<=n;i++){ for(int j=l;j<=u;j++){ if(dp[i][j]){ x=i; y=j; break; } } if(x!=-1)break; } if(x==-1)return {}; vector<int> a; while(x>0){ if(dp[x-1][y]){ x--; }else if(y-w[x-1]>=0&&dp[x-1][y-w[x-1]]){ a.push_back(x-1); y-=w[x-1]; x--; } } return a; }

Compilation message (stderr)

molecules.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
molecules_c.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...