Submission #1320942

#TimeUsernameProblemLanguageResultExecution timeMemory
1320942sameerDetecting Molecules (IOI16_molecules)C++20
Compilation error
0 ms0 KiB
#include "molecules.h" #include<bits/stdc++.h> using namespace std; bool cmp(pair<long long int, long long int> x, pair<long long int, long long int> y){ return x.first < y.first; } vector<int> find_subset(int l, int u, vector<int> w) { long long int i, j, k, n = w.size(); pair<long long int, long long int> p[n+1]; p[0].first = 0; for( i = 1; i <= n; i++) p[i].first = w[i-1], p[i].second = i-1; sort(p+1, p+n+1, cmp); for( i = 1; i <= n; i++) p[i].first += p[i-1].first; for( i = 1; i <= n; i++) if(p[i].first <= u && p[n].first-p[n-i].first >= l) break; vector<long long int> ans; if(i > n) return ans; k = p[i].first; for( j = 1; j <= i; j++) ans.push_back(p[j].second); j = 1; while(k < l){ k -= p[j].first-p[j-1].first; k += p[n+1-j].first-p[n-j].first; ans[j-1] = p[n+1-j].second; j++; } return ans; }

Compilation message (stderr)

molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:17:19: error: could not convert 'ans' from 'vector<long long int>' to 'vector<int>'
   17 |  if(i > n) return ans;
      |                   ^~~
      |                   |
      |                   vector<long long int>
molecules.cpp:25:11: error: could not convert 'ans' from 'vector<long long int>' to 'vector<int>'
   25 |  } return ans;
      |           ^~~
      |           |
      |           vector<long long int>
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
      |         ^~~~