Submission #1266674

#TimeUsernameProblemLanguageResultExecution timeMemory
1266674cmiucDetecting Molecules (IOI16_molecules)C++20
100 / 100
37 ms4280 KiB
#include <iostream> #include <queue> #include <algorithm> #include "molecules.h" using namespace std; vector<int> Vector(queue<int> Q){ vector<int> v; while (Q.size() > 0) v.push_back(Q.front()), Q.pop(); return v; } vector<int> find_subset(int l, int r, vector<int> w){ vector<pair<int,int>> vec; queue<int> Ans; long long Sum = 0, n = w.size(); for (int i=0;i<n;i++) vec.push_back({w[i], i}); sort(vec.begin(), vec.end()); for (auto [W, ind] : vec){ Sum += W; while (Sum > r and Ans.size() > 0) Sum -= w[Ans.front()], Ans.pop(); Ans.push(ind); if (Sum > r) return {}; if (Sum >= l and Sum <= r) return Vector(Ans); // cout<<Sum<<" "<<Ans.size()<<endl; } return {}; }

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...