Submission #330087

# Submission time Handle Problem Language Result Execution time Memory
330087 2020-11-23T19:58:25 Z saarthak Detecting Molecules (IOI16_molecules) C++14
Compilation error
0 ms 0 KB
#include "molecules.h"

std::vector<int> find_subset(int l, int u, std::vector<int> w) {
	if(u == l) return std::vector<int>(1, 0);				//if the range is 0, all weights are same, return any
	
	int total_weight = 0, i = 0;
	std::queue<int> indices;
	
	std::sort(w.begin(), w.end());
	
	while(total_weight < l) {
		total_weight += w[i];
		indices.push(i++);
	}
	i = 0;
	while(total_weight > u) {
		total_weight -= w[i++];
		indices.pop();
	}
	
	if(total_weight < l || total_weight > u) return std::vector<int>();		//no subarray found
	
	std::vector<int> ans(indices.size());
  	i = 0;
	while(!indices.empty()) {
		ans[i++] = indices.front();
		indices.pop();
	}
	return ans;
}

Compilation message

molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:7:7: error: 'queue' is not a member of 'std'
    7 |  std::queue<int> indices;
      |       ^~~~~
molecules.cpp:2:1: note: 'std::queue' is defined in header '<queue>'; did you forget to '#include <queue>'?
    1 | #include "molecules.h"
  +++ |+#include <queue>
    2 | 
molecules.cpp:7:13: error: expected primary-expression before 'int'
    7 |  std::queue<int> indices;
      |             ^~~
molecules.cpp:9:7: error: 'sort' is not a member of 'std'
    9 |  std::sort(w.begin(), w.end());
      |       ^~~~
molecules.cpp:13:3: error: 'indices' was not declared in this scope
   13 |   indices.push(i++);
      |   ^~~~~~~
molecules.cpp:18:3: error: 'indices' was not declared in this scope
   18 |   indices.pop();
      |   ^~~~~~~
molecules.cpp:23:23: error: 'indices' was not declared in this scope
   23 |  std::vector<int> ans(indices.size());
      |                       ^~~~~~~