제출 #1313942

#제출 시각아이디문제언어결과실행 시간메모리
1313942voldi9Detecting Molecules (IOI16_molecules)C++20
컴파일 에러
0 ms0 KiB
#include "molecules.h"
#include <iostream>
#include <vector>
#include <span>
#include <algorithm>

vector<int> map_to_second(span<pair<int,int>> s) {
  for (auto &el : s)
    res.push_back(el.second);
  return res;
}

vector<int> find_subset(int l, int u, vector<int> w) {
  vector<pair<int, int>> items(w.size());
    for (int i = 0; i < n; i++) {
        items[i] = {w[i], i};
    }
  sort(items.begin(), items.end());
  int p1=0, p2=0;
  long long sum = 0;
  while (p1 < w.size()) {
    while (sum < l && p2 < w.size())
      sum += items[p2++].first;
    while (sum > u && p1 < w.size())
      sum -= items[p1++].first;
    if (sum >= l)
      return map_to_second(span<int>(items.begin() + p1, items.begin() + p2));
    else if (p2 >= w.size()) return {};
  }
}

컴파일 시 표준 에러 (stderr) 메시지

molecules.cpp:7:1: error: 'vector' does not name a type
    7 | vector<int> map_to_second(span<pair<int,int>> s) {
      | ^~~~~~
molecules.cpp:13:1: error: 'vector' does not name a type
   13 | vector<int> find_subset(int l, int u, vector<int> w) {
      | ^~~~~~
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
      |         ^~~~